zoukankan      html  css  js  c++  java
  • WPF ItemControl的源与选择项问题

    具体场景:

    datagrid的行中有个combox

    每个行是一个实例A
    每个行中的SelectedItem是实例A的一个属性B

    我希望实现datagrid的复制Command,具体做法是A序列化反序列化成一个新的对象A_Copy,再SelectedItem=A_Copy

    出现问题:A_Copy这行的Combox始终没有选择项

    原因:A中的属性B是Combox的集合中的一项,而A_Copy是新的对象,一个新的内存空间,A_Copy的B_Copy属性也是新的空间,并不属于Combox集合项,所以显示不出来

    解决办法:

    1 A_Copy.B=ComboxShource.Where(t=>t.somePorperty.equals(A_Copy.B.SomeProperty))

    指定成集合中的一项

    2 public override equal(object obj)
    {
    if(this.someproperty==obj,someProperty)
    {
    return true;
    }
    return false;
    }

    在B类中重写Equal方法,这样找的时候就不是按照引用对象的内存地址来判断是否在集合中了

    这个问题困扰了我半天,还是关于值对象和引用对象的基本知识不过关(微软封装得太好了,轻易察觉不到哇o(╥﹏╥)o)

  • 相关阅读:
    FIR滤波器相关解释
    FIR数字信号滤波器
    图像中的插值
    对DDS的深度认识
    嵌入式媒体处理(EMP)中的编码和解码
    FPGA噪声干扰
    视频压缩概述
    ALTERA DDRII IP核使用
    MyEclipse的使用
    Java开发API文档资源
  • 原文地址:https://www.cnblogs.com/swobble/p/11910500.html
Copyright © 2011-2022 走看看