【WIN10】绑定x:Bind

在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 }

 

转载于:https://www.cnblogs.com/yffswyf/p/4699284.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值