解答WPF中ComboBox SelectedItem Binding不上的Bug
正在做一个打印机列表,从中选择一个打印机(System.Printing)
<ComboBox Width="150"
ItemsSource="{Binding PrintQueues}"
SelectedItem="{Binding Model.CurrentPrintQueue}"
DisplayMemberPath="Name">
</ComboBox>
var printServer = new LocalPrintServer();
PrintQueues = printServer.GetPrintQueues();
Model.CurrentPrintQueue = printServer.DefaultPrintQueue;
都觉得这样是没有问题的对不对,可是,实际运行起来 SelectedItem就是绑定不上,找了一大堆网站,都说ComboBox的一个Bug,换SelectedIndex,SelectedValue等方法,我想这不科学,这么优秀的控件,这么简洁的Binding,不可能有Bug的呀。
解决方法:
首先想SelectedItem肯定是来自于ItemsSource中的一个引用,并且他们是同一个对象才行。
但是看代码,我以为printServer.DefaultPrintQueue就是GetPrintQueues()中的一个对象,好嘛,这样写
Model.CurrentPrintQueue = PrintQueues.FirstOrDefault(x => x.Name == printServer.DefaultPrintQueue.Name);
居然绑定上了!
所以以后一定要记住了,SelectedItem必须是ItemsSource中的同一个对象才行,被PrintServer坑了
解答WPF中ComboBox SelectedItem Binding不上的Bug的更多相关文章
- WPF中ComboBox控件的SelectedItem和SelectedValue的MVVM绑定
问题描述:左侧是一个ListView控件,用于显示User类的Name属性,右侧显示其SelectedItem的其他属性,包括Age, Address,和Category.其中Category用Com ...
- WPF中ComboBox用法
The ComboBox control is in many ways like the ListBox control, but takes up a lot less space, becaus ...
- WPF中的Data Binding调试指南
大家平时做WPF开发,相信用Visual studio的小伙伴比较多.XAML里面曾经在某些特殊版本的Visual Studio中是可以加断点进行调试的,不过目前多数版本都不支持在XAML加断点来调试 ...
- WPF中ComboBox使用
1.数据绑定 前台代码: <ComboBox Height="23" HorizontalAlignment="Left" Margin="86 ...
- WPF中ComboBox绑定数据库自动读取产生数据
前台端 <ComboBox HorizontalAlignment="Name="cmb_SSBM" DisplayMemberPath="NAME&qu ...
- 在 WPF 中如何在控件上屏蔽系统默认的触摸长按事件
来源:https://stackoverflow.com/questions/5962108/disable-a-right-click-press-and-hold-in-wpf-applicati ...
- WPF中ComboBox控件绑定键值对操作
WPF中下拉框将键值对作为其数据源的具体操作.本实例以枚举类型以及枚举特性描述字符串生成键值对来进行. namespace ViewC { /// <summary> /// View.x ...
- EasyUI 1.3.2 中 Combobox自动检索 键盘上下选择Bug问题
EasyUI 自带的Combobox控件,提供了下拉列值自动检索功能. 在用到的EasyUI 1.3.2版本中还是有点问题,在键盘上下键移动选择过程中只能定位在第一个,不能正常向下移动 问题解决方式: ...
- WPF中ScrollViewer嵌套引发滚动失灵的Bug
事情起因 测试报告说存在滚动条不能拖动的情况,我们几个开发人员多次测试都未重现该问题.后面发现是操作系统的问题,在XP和部分Win7上会存在该问题.而在我们开发人员的机器上,包括Win7 SP1,Wi ...
随机推荐
- LeetCode 3 Longest Substring Without Repeating Characters(最长不重复子序列)
题目来源:https://leetcode.com/problems/longest-substring-without-repeating-characters/ Given a string, f ...
- Solr5.0源码分析-SolrDispatchFilter
年初,公司开发法律行业的搜索引擎.当时,我作为整个系统的核心成员,选择solr,并在solr根据我们的要求做了相应的二次开发.但是,对solr的还没有进行认真仔细的研究.最近,事情比较清闲,翻翻sol ...
- PHP模拟发送POST请求之四、加强file_get_contents()发送POST请求
使用了笨重fsockopen()方法后,我们开始在PHP函数库里寻找更简单的方式来进行POST请求,这时,我们发现了PHP的文件函数也具有与远程URL交互的功能. 最简单的是fopen()和fread ...
- 活动与服务onbind()
- jquery发送异步请求
var remark = $("#"+id+"remark").val(); var shopid = $("#"+id+"sho ...
- Ubuntu 14.04 LTS Server 无法挂载光盘 启动initramfs等问题
今天需要在戴尔R410服务器上装64位的Linux,师兄给了个14.04的server 64位镜像.一开始打算用U盘安装,用软碟通烧写镜像之后,在服务器端设置从U盘启动,但是安装到一半出现了光盘无法挂 ...
- OpenSSH后门获取root密码及防范
OpenSSH后门获取root密码及防范 相对于Windows操作系统,Linux操作系统的密码较难获取.而很多Linux服务器都配置了Openssh服务,在获取root权限的情况下,可以通过修改或者 ...
- OpenCV 之 数字图像
1 数字图像 数字图像可看作一个数值矩阵, 其中的每个元素代表一个像素点,如下图所示: 2 存储 M行N列图像的存储位数: b = M * N * k ( L=2k, l ∈ [0, L-1] ...
- 发布资源到Asset Store
导入unitypackage右上角没有图标? 每当导入从Asset Store下载的资源时,总会看到右侧有个ICON 而我们自己导出的*.unitypackage ,当我们再次导入时,在右侧就没有此图 ...
- java9-3 返回类型
1. 返回值类型 基本类型:(基本类型简单) 引用类型: 类:返回的是该类的对象 class Student2 { public void study() { System.out.println(& ...