问题描述:
 Combox中,设定了绑定对象,但是在第一次进入时却没有显示上次选中的项。
     1)查看SelectedItem对应绑定的值,也是有的(启动时,读取上次设置的结果,来初始化界面)。
     2)退出界面,不退出程序,再次打开也能显示上一次设置的结果。如果退出程序,再次打开界面却没有。
     3)查看了绑定对象的反射情况,确定绑定是OK的。
 
问题分析:
     1)由于SelectedItem是一个对象,ItemSource是该对象的集合。Combox在更新SelectedItem时,会将对应的值和ItemSource中各个对象进行比较。如果ItemSource中有该对象,则选中该值,没有则没有选中项。
     2)不退出程序,两个对象比较,可以根据分配的序列化空间来比较,进而能判断ItemSource中有上次SelectedItem对应对象。
     3)退出了程序,ItemSource和SelectedItem对象是分开实例化的,在信息比较时,根据空间来比较肯定在ItemSource中找不到该对象,进而没有选中项。
 
解决方法:
     重写SelectedItem对象的Equal()方法。
 
 
另外相对于界面绑定,代码绑定也挺方便的:
 private void InitIFBWCbx(string cbName){ComboBox cb = ( ComboBox) this.FindName(cbName);cb.ItemsSource = AllDCChannel;cb.DisplayMemberPath = "LableName";//cb.SelectedValuePath = "Key";
            cb.SetBinding(ActiproSoftware.Windows.Controls.Ribbon.Controls.ComboBox .SelectedValueProperty,new Binding(){Path = new PropertyPath( "ControlPower"),Source = ControlPowerSettingResult});}

原XML中绑定的代码:

<ribbon:ComboBox Name="ctrlPowerSelectCbx" Height="23"Width="80"  ItemsSource="{Binding AllDCChannel}" DisplayMemberPath="LableName"   SelectedItem="{Binding ControlPowerSettingResult.ControlPower}"   SelectionChanged="ctrlPowerSelectCbx_SelectionChanged"/>

  

转载于:https://www.cnblogs.com/kuang17/p/5102648.html

WPF中,Combox的SelectedItem属性绑定成功后,未能默认显示上一次选择的结果。相关推荐

  1. WPF中的命令与命令绑定(二)

    WPF中的命令与命令绑定(二)                                              周银辉 在WPF中,命令(Commanding)被分割成了四个部分,分别是IC ...

  2. java中登陆界面怎么连接到下一个界面啊_JavaWeb登陆成功后跳转到上一个页面

    JavaWeb登陆成功后跳转到上一个页面,这个标题注定要词不达意,你可能会遇到这样的情形,当点击页面的某个请求时,由于用户未登录,需要跳转到登录页,用户登录成功后,再跳转到上一个页面:还有一种情况,多 ...

  3. Mac系统中移动硬盘热拔(强制退出)后,在插上不显示移动硬盘的问题和解决办法

    Mac系统中移动硬盘热拔(强制退出)后,在插上不显示移动硬盘的问题和解决办法 一.问题描述: 好久没有写博客了,被调研和开题的事情折磨得好久没有写日志和学编程了,现在又到了校招的时间,自己基础好差,感 ...

  4. JavaWeb登陆成功后跳转到上一个页面

    JavaWeb登陆成功后跳转到上一个页面,这个标题注定要词不达意,你可能会遇到这样的情形,当点击页面的某个请求时,由于用户未登录,需要跳转到登录页,用户登录成功后,再跳转到上一个页面:还有一种情况,多 ...

  5. Excel中16进制递增、公式后加符号显示的方法

    Excel中16进制递增.公式后加符号显示的方法 2012年11月21日18:16:11 想做一张8086的中断向量表.用到了Excel中的进制转换函数.求商返回商整数部分的函数. 方法: 1.先用一 ...

  6. a标签居中 img vue_Vue中img的src属性绑定与static文件夹实例

    不少人在vue的开发中遇到这样一个问题: img的src属性绑定url变量,然而图片加载失败. 大部分的情况中,是开发者使用了错误的写法,例如: 这样写肯定是不对的,正确的写法应该使用v-bind: ...

  7. WPF 中Combox的使用

    一.使用 Combox继承于ItemsControl控件,它有自己的条目容器ComBoxItem,举个例子: <ComboBox  Height="21"  >     ...

  8. WPF中的依赖项属性

    随着WPF的推广,不得不重新拾起WPF来,因为这块的产品越来越多. 只能跟着MSDN来学了,所以想是在这里记录下学习的过程和对知识的理解. 先从最基本的吧,依赖项属性是WPF中不同的地方,先了解一下它 ...

  9. 解决eclipse中Mybatis框架下sql语句执行后控制台不显示日志问题

    eclipse执行完sql语句成功后,控制台什么都不打印,如图 解决方法:在mybatis-config.xml配置文件中,加入<setting name="logImpl" ...

最新文章

  1. 数据库表设计的随笔(分库分表)
  2. 使用LVS+TUN搭建集群实现负载均衡
  3. tf.data.Dataset 用法
  4. SCSF 系列:Smart Client Software Factory 中 MVP 模式最佳实践
  5. 计算机一级考试word操作题主要题型,(word)计算机一级考试题型.doc
  6. 编程随想 关系图_IT什么岗位比较好找工作?一张金字塔图就能明白
  7. Linux 词典安装
  8. 【python】字符串的操作与方法、元组的定义与操作
  9. 奇安信代码安全实验室帮助微软修复多个高危漏洞,获官方致谢
  10. MyBatis学习(七)
  11. 如何区分oracle服务器、oracle客户端、plsql?
  12. 基于单片机设计的遥控数字音量控制D类功率放大器设计
  13. Git详解之一 Git起步
  14. java导出多个excel,以压缩包下载
  15. ESP8266-01实战一——带OLED显示屏电子时钟
  16. 自动驾驶路侧感知定位技术条件
  17. 【离散数学】编程练习:求关系的传递闭包
  18. Git、GitLab这辈子的错都报完了 You have not concludedUnlink of file、 Pulling is not possible、Your local changes
  19. 小Y看浮屠世界-往复式单螺杆混炼挤出机构造特征及其运用
  20. 百度Java二面面经

热门文章

  1. 【国际化】应用开发小数点和逗号
  2. 2020年四川软件设计师报名流程
  3. NX二次开发 UFUN获得给定组里的成员和成员数量 UF_GROUP_ask_all_owning_groups
  4. What is YAML? Ain't
  5. 51Nod 1535 思维+DFS
  6. C语言中void代表什么意思?
  7. ping www.baidu.com 中的 TTL值 及其他参数的理解
  8. 智能颈椎带:基于物联网和人工智能的颈部疼痛和颈椎病治疗系统
  9. 计算机网络第六版课程总结,计算机网络课程实训报告总结 | 翠格格
  10. 关于offer选择,一些不是建议的建议