DataBinding不允许我更改值

时间:2012-03-05 20:48:45

标签: c# winforms data-binding devexpress

我正在尝试在winform应用中实现DataBinding。到目前为止,绑定到Text控件工作正常。我的麻烦来自DevExpress的DateEditLookUpEdit控件。

此声明按预期工作:

lkuState.DataBindings.Add("EditValue", Address, "StateID");

然而,这不是:

lkuCounty.DataBindings.Add("EditValue", Address, "County.CountyID");

我的意思是按预期工作的是第一个语句用适当的值填充控件并允许我更改该值以便保存。
第二个语句使用适当的值填充控件,但不允许我使用控件更改该值。

我对DateEdit控件的声明有同样的问题:

uxStartDate.DataBindings.Add("EditValue", WorkerHistory, "StartDate");

我是数据绑定的新手,可能很容易犯了一个简单的错误,但如果我能弄明白什么的话,就得到了我。非常感谢帮助。

此处参考的是我的AddressCounty对象:

public class Address
{
    public int AddressID { get; set; }

    public string AddressLine1 { get; set; }

    public string AddressLine2 { get; set; }

    public string AddressLine3 { get; set; }

    public string City { get; set; }

    public string Zip { get; set; }

    public string ZipPlus { get; set; }

    public string DirectionsTo { get; set; }

    public string InfoRecipient { get; set; }

    public County County { get; set; }

    public string StateID { get; set; }

    public KeyValuePair<char, string> AddressType { get; set; }

    public string DisplayString { get { return ToString(); } }

    public override string ToString()
    {
        return String.Format("{0}, {1}, {2} {3}", AddressLine1, City, StateID, Zip);
    }
}
public class County
{
    public short? CountyID { get; set; }

    public string CountyName { get; set; }
}

2 个答案:

答案 0 :(得分:2)

乍一看我会说这是因为CountyIDNullable

请查看以下article

答案 1 :(得分:1)