• 【WP7】关于ListBox控件的数据绑定


    ListBox是一个列表控件,列表中的每一个项可以是任意的对象(object),我们可以通过模板来定义每一个项的显示和数据

    下面介绍ListBox的模板的定义,和数据绑定

      1、定义一个ListBox控件,先看代码

        <ListBox HorizontalAlignment="Left" Margin="10,10,0,84" Name="lbItemList" Width="440" > 
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <Grid Margin="2,10,2,2" Height="auto">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="auto"/>
                            <RowDefinition Height="auto"/>
                            <RowDefinition Height="auto"/>
                            </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition />
                            <ColumnDefinition Width="Auto" />
                        </Grid.ColumnDefinitions>
    
                        <TextBlock Grid.Column="0" Grid.Row="0" Text="学号:"/>
                        <TextBlock Grid.Column="0" Grid.Row="1" Text="姓名:"/>
                        <TextBlock Grid.Column="0" Grid.Row="2" Text="电邮:"/>
                        <TextBlock Grid.Column="1" Grid.Row="0" Text="{Binding StuNo}"/>
                        <TextBlock Grid.Column="1" Grid.Row="1" Text="{Binding Name}"/>
                        <Rectangle Fill="Blue" Width="200" Height="20" Grid.Column="1" Grid.Row="2" />
                    </Grid>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

        模板包含一个Grid控件,Grid控件内有5个TextBlock控件和一个矩形控件Rectangle,两个控件绑定了对象的两个属性StuNo,Name

        接下来是给ListBox添加项,两个TextBlock文本控件显示的内容就是添加项的对应的两个属性的值

        所以先要定义一个ListBox项的类

            public class Student
            {
                public string StuNo { get; set; }
                public string Name { get; set; }
    
            }

        接下来是创建对象,添加到ListBox中

        定义一个变量list

            System.Collections.ObjectModel.ObservableCollection<Student> list = new System.Collections.ObjectModel.ObservableCollection<Student>()
            list.Add(new Student { StuNo = "201201", Name = "Bomo" });
            list.Add(new Student { StuNo = "201202", Name = "Tobi" });

        把list绑定到ListBox中

            this.lbItemList.ItemsSource = list;

        

        看一下效果 

         

     

  • 相关阅读:
    基于u盘身份验证
    新的一年开始了~!
    asp.net的条形码
    windows phone (21) Grid元素的Background和Clip
    windows phone (19) 深入了解TextBlock
    windows phone (25) Canvas元素B
    windows phone (20) Image元素
    windows phone (22) 隐藏元素
    windows phone (26) ApplicationBar应用程序栏
    windows phone (27) 基础Button
  • 原文地址:https://www.cnblogs.com/bomo/p/2758243.html
Copyright © 2020-2023  润新知