码迷,mamicode.com
首页 > Windows程序 > 详细

【WIN10】绑定x:Bind

时间:2015-08-03 16:20:38      阅读:520      评论:0      收藏:0      [点我收藏+]

标签:

在WP8、WP8中,我们知道有一个绑定{Binding},而在Win10中,新增了一个绑定{x:Bind}

x:Bind :为编译时绑定 ,内存、内存相对于传统绑定都有优化

特性:

1.为强类型      2.默认上下文为Page或UserControl       3.Mode默认为OneTime

xaml:

<TextBlock Text="{x:Bind BindData}"/>

后台代码:

1 public sealed partial class MainPage : Page
2 {
3     public string BindData = "绑定的数据";
4 
5     public MainPage()
6     {
7         this.InitializeComponent();
8     }
9 }

如果Text="{x:Bind BindData}"绑定的属性有误,则编译时会报错。

模板中使用x:Bind

 xaml:

    xmlns:model="using:HelloWorld.Models"

1
<ListView x:Name="lv" ItemsSource="{x:Bind news}"> 2 <ListView.ItemTemplate>
        <!--x:Bind 是强类型,必须在模板中声明数据类型--> 3 <DataTemplate x:DataType="model:NewsModel"> 4 <StackPanel> 5 <TextBlock Text="{x:Bind Title}" /> 6 <TextBlock Text="{x:Bind Text}" /> 7 </StackPanel> 8 </DataTemplate> 9 </ListView.ItemTemplate> 10 </ListView>

增加一个类:

namespace HelloWorld.Models
{
  public class NewsModel
  {
    public string Title { get; set; }
    public string Text { get; set; }
  }
}

后台代码:

 1 ObservableCollection<NewsModel> news= new ObservableCollection<NewsModel>();
 2 
 3 public MainPage()
 4 {
 5     this.InitializeComponent();
 6     pictures.Add(new NewsModel() { Title= "Title1", Text = "Text1" });
 7     pictures.Add(new NewsModel() { Title= "Title2", Text = "Text2" });
 8     pictures.Add(new NewsModel() { Title= "Title3", Text = "Text3" });        
 9    //此处无需对DataContext赋值了
10 }

 

【WIN10】绑定x:Bind

标签:

原文地址:http://www.cnblogs.com/yffswyf/p/4699284.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!