多选Combobox的实现(适合MVVM模式)
来源:互联网 发布:阿里java框架 编辑:程序博客网 时间:2024/06/05 11:31
MVVM没有.cs后台逻辑,一般依靠command驱动逻辑及通过binding(vm层的属性)来显示前端
我的数据类Student有三个属性int StuId ,string StuName ,bool isChecked。
首先第一步创建一个UserControl,里面放一个ComboBox
ComboBox 的样式改造如前篇非MvvM模式下的改造一样,只要将template中ContentPresenter的Content="{TemplateBinding SelectionBoxItem}"改成Content="{TemplateBinding Tag}"即可。
然后在UserControl.cs里加一个依赖属性
public List<Student> SelectedItems1
这里在回调函数中做了个弹出框的处理,用来判断属性绑定是否成功。
勾选框的逻辑处理:
private void CheckBox_Click(object sender, RoutedEventArgs e)
第二步,建立ViewModel层
里面创建两个属性,一个用来创建数据源集合,一个用来存放勾选的集合
public ObservableCollection<Student> StudentList{get;set;}
建立一个command及一个遍历方法
public ICommand CheckItemsChangedCommand
public void UpdataSelecteditems()
在ViewModel构造函数中绑定数据集合,实例化Command;
public ComboboxViewModel()
最后一步完成部件的组装
<StackPanel>
后台加 this.DataContext = new ComboboxViewModel();
(PS:当在Selecte ComboboxItem而非Check的时候,combobox head会显示checkbox。这里要重现ComboboxItem的onMouseLeftUp事件,里面改成e.handle =true即可)
- 多选Combobox的实现(适合MVVM模式)
- WPF MVVM开发模式下,有关textbox,combobox,dataGrid的前台页面代码
- WPF与MVVM的实现(一)MVVM简介
- kendo-ui的MVVM模式 (赞)
- Silverlight的MVVM模式
- Knockout的MVVM模式
- MVVM模式的使用
- MVVM设计模式具体实现
- MVVM 开发模式 dataGrid中嵌入combobox,如何使用ComboBox.ItemTemplate
- Wpf实例-MVVM模式实现的登录窗体
- 简读RSS-MVVM模式的安卓客户端实现
- iOS 使用MVVM模式实现Cell的点击响应
- iOS 使用MVVM模式实现Cell的点击响应
- 对话框的MVVM实现
- MVVM设计模式和WPF中的实现 (事件绑定)
- MVVM下RadioButton单选钮和ComboBox下拉框的使用
- 关于mvvm的ComboBox绑定SelectedValue值不正确问题
- 谈WPF的MVVM模式
- css3 媒体类型(Media Type)
- 如何在java环境下使用feature option(如何添加FeatureOption.xxx)
- 用xsl格式化MSXML2操作的XML文件
- ie6 hover 背景图闪动css解决方法
- boost 智能指针
- 多选Combobox的实现(适合MVVM模式)
- Name与x:Name的关系
- ORA-27101
- 把字符串中的汉字去掉,然后判断全角和半角
- 我的SIFT代码!!!原来我的代码还没有compute部分
- 纯净版eclipse添加web支持,配置tomcat
- 数据挖掘工程师的要求
- android RadioButton 点击时候出现点击声音的效果
- nio