zoukankan      html  css  js  c++  java
  • 【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 }
  • 相关阅读:
    Struts学习之手动验证
    Struts学习之文件上传
    Struts学习之模型驱动
    Struts学习之类型转换
    Struts学习之自定义拦截器
    Java基础之"=="和 和 equals 方法的区别
    Hadoop学习之Hadoop案例分析
    Hadoop学习之Hadoop集群搭建
    Hadoop学习之自定义二次排序
    Hadoop学习之Mapreduce执行过程详解
  • 原文地址:https://www.cnblogs.com/yffswyf/p/4699284.html
Copyright © 2011-2022 走看看