WPF 数据模板

本文介绍了如何在WPF中利用数据模板展示学生信息。通过创建一个Student类,然后使用ListBox控件结合ItemTemplate属性,展示了如何绑定和显示学生的姓名、年龄和年级。示例代码详细演示了数据模板的使用过程,最终实现了一个简洁的学生信息列表展示效果。
摘要由CSDN通过智能技术生成

数据模板实质上也是以内容模板为基础,在数据模板中,是对内容模板重复的显示,以达到迭代显示数据的作用,所以在数据模板中,可以添加呈现数据的任意元素。能够添加数据模板的元素,主要是继承自ItemsControl类的控件,通过控件的ItemTemplate属性来支持,比如我们常用的ListBox和ComboBox控件。案例如下:

创建一个学生类:

public  class Student
   {
       public string Name {
           get;
           set;
       }
       public int Age {
           get;
           set;
       }
       public string Grade {
           get;
           set;
       }
   }

创建一个ListControl控件ListBox,且创建数据模板,如以下代码:

<ListBox Width="300" Height="300" x:Name="studentList" Canvas.Left="166" Canvas.Top="19"  HorizontalContentAlignment="Stretch">
     <ListBox.ItemTemplate>
         <DataTemplate>
             <Border Margin="5" BorderThickness="2" BorderBrush="DarkSlateBlue" CornerRadius="5">
                 <Grid>
                     <Grid.RowDefinitions>
                         <RowDefinition></RowDefinition>
                         <RowDefinition></RowDefinition>
                         <RowDefinition></RowDefinition>
                     </Grid.RowDefinitions>
                     <TextBlock Grid.Row="0" HorizontalAlignment="Stretch" Text="{Binding Path=Name}"></TextBlock>
                     <TextBlock Grid.Row="1" HorizontalAlignment="Stretch" Text="{Binding Path=Age}"></TextBlock>
                     <TextBlock Grid.Row="2" HorizontalAlignment="Stretch" Text="{Binding Path=Grade}"></TextBlock>
                 </Grid>
         </Border>
         </DataTemplate>
     </ListBox.ItemTemplate>
</ListBox>

向控件中添加数据,代码如下:

Student st = new Student();
st.Name = NameTxt.Text;
st.Age =int.Parse(AgeTxt.Text);
st.Grade = GradeTxt.Text;
this.studentList.Items.Add(st);

得到的效果如下图所示:

以上完成了最简单的数据模板

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值