自定义控件在一个项目中引用多个,修改其中一个的某个属性时,其他所有的引用的这个属性也跟着一起变化
[Category("2、颜色集合"), Description("设置颜色及其对应文本")]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), MergableProperty(false)]
public ObservableCollection<MyColorItems> ColorDatas
{
get{ return myColorItems; }
set
{
ObservableCollection<MyColorItems> listt = value;
myColorItems.Clear();
foreach (var ii in listt)
{
myColorItems.Add(ii);
}
}
}
[Serializable]
public class MyColorItems
{
[Description("对应文本"), Browsable(true)]
public string Name { get; set; }
[Description("颜色"), Browsable(true)]
public Color myColor { get; set; }
public MyColorItems() { }
public MyColorItems(string name, Color cc)
{
Name = name;
myColor = cc;
}
}
这个属性在Collection Changed事件中监听修改
单个只用一个的话能够正常使用,用多个的话只有这个属性会一起变,其他属性正常