win10 uwp 绑定多数据

原创 2015年11月20日 17:03:46

经常我们需要绑定的数据有多个,当添加到集合控件的对象类型结构比较复杂,我们希望自己来定义排版布局,这时可以使用ItemTemplate用资源的定义

现在有数据
caddressBook

    public class caddressBook
    {
        public caddressBook()
        {

        }
        /// <summary>
        /// 标识符
        /// </summary>
        public string id
        {
            set;
            get;
        }
        /// <summary>
        /// 通讯人姓名
        /// </summary>
        public string name
        {
            set;
            get;
        }
        /// <summary>
        /// 联系方式
        /// </summary>
        public string contact
        {
            set;
            get;
        }
        /// <summary>
        /// 工作地点
        /// </summary>
        public string address
        {
            set;
            get;
        }
        /// <summary>
         /// 城市
         /// </summary>
        public string city
        {
            set;
            get;
        }
        /// <summary>
        /// 备注
        /// </summary>
        public string comment
        {
            set;
            get;
        }
    }

我们在MainPage.xaml用

    <Page.Resources>
        <DataTemplate x:Key="xaddressBook">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="auto"/>
                <ColumnDefinition Width="auto"/>
                <ColumnDefinition Width="auto"/>
                <ColumnDefinition Width="auto"/>
                <ColumnDefinition Width="auto"/>
            </Grid.ColumnDefinitions>
            <!--通讯人姓名、联系方式、工作地点、城市、备注-->
            <TextBlock Grid.Column="0" >
                    通讯人姓名:
                    <Run Text="{Binding name}"/>  
                    <LineBreak/>
                    联系方式:
                    <Run Text="{Binding contact}"/>
                    <LineBreak/>
                    工作地点:
                    <Run Text="{Binding address}"/>
                    <LineBreak/>
                    城市:
                    <Run Text="{Binding city}"/>
                    <LineBreak/>
                    备注:
                    <Run Text="{Binding remark}"/>
                    <LineBreak/>
            </TextBlock>           
        </Grid>
    </DataTemplate>
    </Page.Resources>

列表

<ListView ItemTemplate="{StaticResource xaddressBook}" ItemsSource="{x:Bind view.addressBook,Mode=OneWay}"/>

使用System.Collections.ObjectModel.ObservableCollection来作为list资源。

viewModel

        public System.Collections.ObjectModel.ObservableCollection<caddressBook> addressBook
        {
            set;
            get;
        }
            = new System.Collections.ObjectModel.ObservableCollection<caddressBook>()
        {
                new caddressBook()
                {
                    name ="张三",
                    contact ="1",
                    address ="中国",
                    city =" ",
                    comment =" "
                } ,
                new caddressBook()
                {
                    name ="张三",
                    contact ="1",
                    address ="中国",
                    city =" ",
                    comment =" "
                }
        };

因为想一个名字不是很简单,我就使用contact 不同来认为是不同的

修改addressBook前台会更新,ObservableCollection是包含了INotifyPropertyChanged

        /// <summary>
        /// 修改
        /// </summary>
        public void modify()
        {
            var taddressBook = new caddressBook()
            {
                name = "张三" ,
                contact = "2" ,
                address = "中国" ,
                city = " " ,
                comment = " "
            };
            addressBook.Add(taddressBook);
        }

运行ObservableCollection

点击添加addressBook

代码:https://code.csdn.net/lindexi_gd/lindexi_gd/tree/master/observable_collection

版权声明:http://blog.csdn.net/lindexi_gd 本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【UWP通用应用开发】集合控件与数据绑定

为ListView和GridView添加数据ListView采用垂直堆叠得方式显示数据,而GridView则采用水平堆叠得方式。长相的话嘛,它们都差不多。 ...
  • NoMasp
  • NoMasp
  • 2015年12月13日 11:24
  • 4157

win10 uwp 绑定密码

win10 下,密码框无法绑定到ViewModel,Password是不可以绑定。 我们可以自己使用简单方法去绑定...

Win10之UWP的数据存储

我们知道通常我们开发的时候都要考虑把用户的数据存储到一个数据库里面,而这个数据库则考虑到了整个应用的性能上面,这里我们不考虑SQL server的数据库,我们考虑较为轻量的数据库进行存储。首先我们新建...

Win10开发:数据绑定

数据绑定并不是Win10的新东西,早在WP7/Win8时代就有了。但是在Win10有新的特性与改变,这在文章的后面讲解。 下面通过几个简单实例说明几种常用的绑定用法。 1、ElementName的使用...

DEV ChartControl绑定DataTable多系列多数据详细讲解

dev的chartcontrol控件其实是很强大的,可以根据数据库直接绑定DataSouce,也可以自己为它的每一个系列添加坐标点,即一个包含横坐标和纵坐标的SeriesPoint,这些都是可以通过这...
  • cherrow
  • cherrow
  • 2017年03月06日 16:08
  • 153

Win10 UWP 开发教程 课程 资源

  • 2017年09月27日 13:15
  • 48B
  • 下载

Win10/UWP新特性系列—使用打印机

微软在Win10时代终于完成的设备系统的大统一,"56个民族,56支花……"(⊙o⊙)…,既然统一了,那么也就意味着API也统一了,所以在UWP中,我们就可以使用统一的打印API来为设备(包括移动设备...
  • igweyou
  • igweyou
  • 2015年12月10日 09:26
  • 997

win10 uwp 获得焦点改变

本文讲的是当我们应用失去焦点时,我们获得事件,当我们应用获得焦点,同样获得事件。同时,在应用不可以见时,我们也可以获得。...

Win10 UWP 开发系列:支持异步的SQLite

上篇文章已经实现了在UWP中使用SQLite作为本地存储,作为移动端的程序,及时响应用户的操作是提高用户体验的重要途径,因此UWP的很多api都是异步的。那么如何使SQLite支持异步呢? 参考SQL...
  • igweyou
  • igweyou
  • 2016年01月05日 10:00
  • 1188

win10 uwp 保存用户选择文件夹

如果我们每次把临时处理的文件保存,都要让用户选择一次,用户会不会觉得uwp垃圾?如果我们每次打开应用,都从某个文件读取,而这个文件不在应用目录和已知的目录,那么每次都需要用户选择,用户会不会觉得uwp...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:win10 uwp 绑定多数据
举报原因:
原因补充:

(最多只允许输入30个字)