【发布时间】:2016-07-11 19:46:51
【问题描述】:
我正在尝试在 numericupdown 和数组元素之间创建数据绑定。在我的表单中,我尝试创建如下所示的绑定,但它似乎不起作用。任何帮助将不胜感激。
绑定:
nudTest.DataBindings.Add("Value", eac.ESettings.HsvArray[0], "", false,DataSourceUpdateMode.OnPropertyChanged);
数组:
public class ESettings : INotifyPropertyChanged
{
private int[] hsvArray = new int[6];
public event PropertyChangedEventHandler PropertyChanged;
[XmlIgnore]
public bool PrgVarIsDirty
{
get { return prgVarIsDirty; }
set
{
prgVarIsDirty = value;
OnPropertyChanged("PrgVarIsDirty");
}
}
public int[] HsvArray
{
get { return hsvArray; }
set
{
if (value != hsvArray)
{
prgVarIsDirty = true;
hsvArray = value;
OnPropertyChanged("HsvArray");
}
}
}
// Create the OnPropertyChanged method to raise the event
protected void OnPropertyChanged(string name)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null)
{
handler(this, new PropertyChangedEventArgs(name));
}
}
}
【问题讨论】:
-
WinForms 不支持这种数据绑定
-
我应该以不同的方式来做这件事还是我运气不好?
-
当您想将控件绑定到数组的元素,而不是尝试直接绑定到元素,将控件绑定到数组,然后将 CurrencyManager 的位置设置为该元素的索引数组中的元素。
标签: c# winforms data-binding