继续聊WPF——如何获取ListView中选中的项
来源:互联网 发布:mac os x10.10.5迅雷 编辑:程序博客网 时间:2024/06/08 07:52
在WPF中获Listview中选中的项,与WinForm里面有着很大的区别,要亲身去研究一下在WPF中如果处理,其实也不难,来,下面我们一起来通过一个简单的示例来感悟一下吧。
第一步就是建立一个WPF应用程序项目,这个不用描述了,节省了31个字。
第二步,为了实现数据绑定,先写一个简单的员工类,包含三个属性——姓名、年龄、城市。
- public class Emp
- {
- public string Name { get; set; }
- public int Age { get; set; }
- public string City { get; set; }
- }
第三步,写前台XAML,布局窗体和ListView。
- <Grid>
- <ListView x:Name="lv" SelectionChanged="lv_SelectionChanged">
- <ListView.View>
- <GridView AllowsColumnReorder="True">
- <GridViewColumn DisplayMemberBinding="{Binding Path=Name}" Header="姓名"
- Width="65"/>
- <GridViewColumn DisplayMemberBinding="{Binding Path=Age}" Header="年龄"
- Width="65"/>
- <GridViewColumn DisplayMemberBinding="{Binding Path=City}" Header="所在城市"
- Width="70"/>
- </GridView>
- </ListView.View>
- </ListView>
- </Grid>
第四步,在窗体的loaded事件中绑定数据。
- private void Window_Loaded(object sender, RoutedEventArgs e)
- {
- lv.ItemsSource = new Emp[]{
- new Emp{Name="小明",Age=16,City="北京"},
- new Emp {Name="小红",Age=20, City="天津"},
- new Emp{ Name="小环", Age=21, City="杭州" },
- new Emp { Name="小高", Age=23, City="东莞" }
- };
- }
第五步,我们要知道,ListView的选定项是什么类型的。
- private void lv_SelectionChanged(object sender, SelectionChangedEventArgs e)
- {
- MessageBox.Show(lv.SelectedItem.GetType().ToString());
- }
第六步,这回爽歪歪了,原来Listview选定的项类型就是我们给它绑定的类型,也就是说,如果我们把A类绑定到控件,选定项就是一个A类的实例。
- private void lv_SelectionChanged(object sender, SelectionChangedEventArgs e)
- {
- Emp emp = lv.SelectedItem as Emp;
- if (emp != null && emp is Emp)
- {
- MessageBox.Show("员工姓名:" + emp.Name +
- "\n\n" + "员工年龄:" + emp.Age.ToString() + "\n\n" +
- "城市:" + emp.City);
- }
- }
0 0
- 继续聊WPF——如何获取ListView中选中的项
- 继续聊WPF——如何获取ListView中选中的项
- Android中ListView如何获取列表中选中的CheckBox
- 继续聊WPF——为ListView的行设置样式
- 继续聊WPF——用Blend自定义Listview控件的列表头
- 继续聊WPF——为ListView的行设置样式
- 如何保持ListView中选中的Item高亮
- 继续聊WPF——依赖项属性(1)
- 继续聊WPF——依赖项属性(2)
- 继续聊WPF——依赖项属性(3)
- 继续聊WPF——Thumb控件
- 继续聊WPF——进度条
- 继续聊WPF——BulletDecorator控件
- 继续聊WPF——Slider控件
- 继续聊WPF——自定义命令
- 继续聊WPF——Expander控件
- 继续聊WPF——进度条
- 继续聊WPF——Thumb控件
- 简易计算器---JAVA
- yiishizhan
- 5、Set数据类型
- System Verilog视频学习笔记(5)- Concurrency
- atom安装markdown-preview-enhanced和markdown-pdf插件
- 继续聊WPF——如何获取ListView中选中的项
- VS自带程序打包部署发布
- ButterKnife 8.0.1 @BindView 失败,nullpointerexception
- Windows使用Xshell访问虚拟机的Ubuntu
- 数据传输的常用格式JSON
- python抽象
- 继续聊WPF——设置网格控件列标题的样式
- 关于汽车评测集的朴素贝叶斯分类 -AI实验
- TensorFlow安装要点