WPF(Binding集合对象数据源)
来源:互联网 发布:甘肃电大网络考试平台 编辑:程序博客网 时间:2024/05/18 03:09
<Window x:Class="TestOfBindingItemsControl.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="525"> <StackPanel x:Name="stackPanel" Background="LightBlue" > <TextBlock Text="StudentID:" Margin="5" /> <TextBox x:Name="textBoxId" Margin="5" /> <TextBlock Text="StudentList:" FontWeight="Bold" Margin="5" /> <ListBox x:Name="listBoxStudents" Height="110" Margin="5" /> </StackPanel></Window>
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;namespace TestOfBindingItemsControl{ /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); List<Student> stuList = new List<Student>() { new Student(){Id = 0,Name = "Tim",Age = 29}, new Student(){Id = 1,Name = "Tom",Age = 28}, new Student(){Id = 2,Name = "Kyle",Age = 27}, new Student(){Id = 3,Name = "Tony",Age = 26}, new Student(){Id = 4,Name = "Vine",Age = 25}, new Student(){Id = 5,Name = "Mike",Age = 24} }; // 为ListBox设置Binding this.listBoxStudents.ItemsSource = stuList; this.listBoxStudents.DisplayMemberPath = "Name"; Binding binding = new Binding("SelectedItem.Id") { Source = this.listBoxStudents }; this.textBoxId.SetBinding(TextBox.TextProperty, binding); } } public class Student { public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } }}