zoukankan      html  css  js  c++  java
  • WPF入门(七)绑定一个集合

    当我完成下面的代码示例时,我乐了。我嘞个去,这不整个就是webForm么,只不过html变成了xaml。集合的绑定基本和webForm的绑定一样。先上代码:

    1     //实体 
    2     class Person 
    3     {
    4         public string Name { getset; }
    5         public int Age { getset; }
    6     }
    代码
     1 <Window x:Class="WpfAppListBinding.Window1"
     2     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
     3     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
     4     Title="Window1" Height="300" Width="591" Loaded="Window_Loaded">
     5     <Grid>
     6         <ListBox Margin="26,28,26,62" Name="listBox1" >
     7             <ListBox.ItemTemplate>
     8                 <DataTemplate>
     9                     <StackPanel Orientation="Vertical">
    10                         <WrapPanel>
    11                             <TextBlock  Text="{Binding Path=Name}"  />
    12                             <TextBlock > 【</TextBlock>
    13                             <TextBlock  Text="{Binding Path=Age}" />
    14                             <TextBlock ></TextBlock>
    15                         </WrapPanel>
    16                     </StackPanel>
    17                 </DataTemplate>
    18             </ListBox.ItemTemplate>
    19         </ListBox>
    20     </Grid>
    21 </Window>
    2
    代码
     1  /// <summary>
     2     /// Window1.xaml 的交互逻辑
     3     /// </summary>
     4     public partial class Window1 : Window
     5     {
     6         public Window1()
     7         {
     8             InitializeComponent();
     9         }
    10 
    11         private void Window_Loaded(object sender, RoutedEventArgs e)
    12         {
    13             List<Person> lst = GetPersonListFromDatabase();
    14             listBox1.ItemsSource = lst;
    15         }
    16 
    17         private List<Person> GetPersonListFromDatabase()
    18         {
    19             List<Person> lst = new List<Person>();
    20             for (int i = 0; i < 10; i++)
    21             {
    22                 lst.Add(new Person()
    23                 {
    24                     Name = "" + i,
    25                     Age = i * 10
    26                 });
    27             }
    28             return lst;
    29         }
    30     }
    2
     

    基本步骤是:

    1.拖一个Listbox到页面。

    2.编写ListBox内的ListBox.ItemTemplate 项模板。在模板内处理数据绑定的控件。

    3.在后台代码里指定数据源 

         List<Person> lst = GetPersonListFromDatabase();
                listBox1.ItemsSource = lst;

    F5运行。OK。。。

    不过,不过。我怎么没见到GridView? 怎么少了那么强大的控件呢。更多控件的使用我们会慢慢接触到。

    待续ing...

  • 相关阅读:
    OC基础框架
    协议代理
    内存管理
    重写init或自定义init方法
    iOS输入框UITextField输入限制
    iOS 打包FrameWork
    iOS 持续往文件写入数据。
    ld: library not found for -lxxx 问题的解决办法
    iOS 侧滑返回过程中导航栏的黑色问题解决办法
    iOS 蓝牙分包发送数据
  • 原文地址:https://www.cnblogs.com/vir56k/p/1935825.html
Copyright © 2011-2022 走看看