请问WPF如何将多个Listbox数据绑定到一个Listbox上?
答案:1 悬赏:0 手机版
解决时间 2021-04-14 02:33
- 提问者网友:我是女神我骄傲
- 2021-04-13 07:51
请问WPF如何将多个Listbox数据绑定到一个Listbox上?
最佳答案
- 五星知识达人网友:神鬼未生
- 2021-04-13 09:21
listbox是显示数据集合的,为何你第三个listbox是用来显示单个元素的 。。。
如果你在后台有个类,比如Student。里面有个Name属性。第二个listbox绑定Student对象集合
class Student
{
public string Name { get; set; }
}
List Students = new List();
Students.Add(new Student() { Name = "aaa" });
Students.Add(new Student() { Name = "bbb" });
Students.Add(new Student() { Name = "ccc" });
listbox.ItemsSource = Students;
前台代码:
显示单个对象(第二个listbox的选中对象)的值用一个textblock就可以了么。直接将listbox的SelectedValue绑定到text属性上不就完事了。追问好像没有说清楚.第3个listbox是显示前2个中选中的元素,前两个listbox是多选的.不是单选.因此也是一个集合.
前两个listbox是多选,怎样响应选中和未选中的事件呢?追答选中和未选中事件 = = 你以为是checkbox还是radiobutton啊。listbox是通过SelectionChanged事件来实行选项变化的。
多选的话,只要设置listbox的SelectionMode="Multiple"就可以了。此时获得的listbox的SelectedItems就是一个集合了,你可以把这个集合赋值给第三个listbox所绑定的那个集合身上。
具体的做法就是:第三个listbox后台绑定一个集合对象。然后在第一个和第二个listbox的SelectionChanged里对这个集合对象做增加项和删除项的操作。所以第三个listbox绑定的这个集合对象类型应该是ObservableCollection,这样就能通知到前台。追问其实我是想能不能不使用第三个集合,直接绑定到前2个的SelectedItems上.
是不是通过SelectionChangedEventArgs.AddedItems 来显示当前点击选中的元素?
我已经试过,是这样,不知有没有更好的方法.追答只要逻辑合理,便于维护和理解,什么方法都可以
如果你在后台有个类,比如Student。里面有个Name属性。第二个listbox绑定Student对象集合
class Student
{
public string Name { get; set; }
}
List
Students.Add(new Student() { Name = "aaa" });
Students.Add(new Student() { Name = "bbb" });
Students.Add(new Student() { Name = "ccc" });
listbox.ItemsSource = Students;
前台代码:
显示单个对象(第二个listbox的选中对象)的值用一个textblock就可以了么。直接将listbox的SelectedValue绑定到text属性上不就完事了。追问好像没有说清楚.第3个listbox是显示前2个中选中的元素,前两个listbox是多选的.不是单选.因此也是一个集合.
前两个listbox是多选,怎样响应选中和未选中的事件呢?追答选中和未选中事件 = = 你以为是checkbox还是radiobutton啊。listbox是通过SelectionChanged事件来实行选项变化的。
多选的话,只要设置listbox的SelectionMode="Multiple"就可以了。此时获得的listbox的SelectedItems就是一个集合了,你可以把这个集合赋值给第三个listbox所绑定的那个集合身上。
具体的做法就是:第三个listbox后台绑定一个集合对象。然后在第一个和第二个listbox的SelectionChanged里对这个集合对象做增加项和删除项的操作。所以第三个listbox绑定的这个集合对象类型应该是ObservableCollection,这样就能通知到前台。追问其实我是想能不能不使用第三个集合,直接绑定到前2个的SelectedItems上.
是不是通过SelectionChangedEventArgs.AddedItems 来显示当前点击选中的元素?
我已经试过,是这样,不知有没有更好的方法.追答只要逻辑合理,便于维护和理解,什么方法都可以
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯