zoukankan      html  css  js  c++  java
  • WPF的ItemsControl设置数据源以及Binding使用

       Student类:

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Threading.Tasks;
     6 
     7 namespace BindingLINQ
     8 {
     9     public class Student
    10     {
    11         public int Id { get; set; }
    12         public string Name { get; set; }
    13         public int Age { get; set; }
    14     }
    15 }
    View Code

    1. 为ItemsControl类型的控件赋值,这里使用的是ListView,

       只需要将集合直接赋值给 控件的 ItemsSource即可

    namespace BindingLINQ
    {
        /// <summary>
        /// MainWindow.xaml 的交互逻辑
        /// </summary>
        public partial class MainWindow : Window
        {
            public MainWindow()
            {
                InitializeComponent();
                List<Student> list = new List<Student>() 
                {
                    new Student(){Id=1,Name="f1",Age=9},
                    new Student(){Id=2,Name="f2",Age=19},
                    new Student(){Id=3,Name="f3",Age=29}
                };
    
                lstStudent.ItemsSource = list;//赋值
            }
        }
    }
    View Code

    2.然后在XAML中只需要将ListView行的格式设置好,控件将会自动循环将数据输出

     1 <Window x:Class="BindingLINQ.MainWindow"
     2         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
     3         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
     4         Title="MainWindow" Height="350" Width="525">
     5     <Grid>
     6         <ListView x:Name="lstStudent" Height="100" Width="200">
     7             <ListView.View>
     8                 <GridView>
     9 <!--将标题和每一列的数据绑定好,这里一行的数据就对于ItemsSource中的一个对象的各个属性-->
    10                     <GridViewColumn Header="Id" Width="30" DisplayMemberBinding="{Binding Id}"/>
    11                     <GridViewColumn Header="Name" Width="30" DisplayMemberBinding="{Binding Name}"/>
    12                     <GridViewColumn Header="Age" Width="30" DisplayMemberBinding="{Binding Age}"/>
    13                 </GridView>
    14             </ListView.View>
    15         </ListView>
    16     </Grid>
    17 </Window>
    View Code
  • 相关阅读:
    HDOJ 4747 Mex
    HDU 1203 I NEED A OFFER!
    HDU 2616 Kill the monster
    HDU 3496 Watch The Movie
    Codeforces 347A A. Difference Row
    Codeforces 347B B. Fixed Points
    Codeforces 372B B. Hungry Sequence
    HDU 1476 Sudoku Killer
    HDU 1987 How many ways
    HDU 2564 词组缩写
  • 原文地址:https://www.cnblogs.com/tommy-huang/p/4984624.html
Copyright © 2011-2022 走看看