DataBinding上没有抛出异常,无效的dataMember

时间:2012-01-25 03:12:45

标签: c# data-binding

在尝试解决here中的双向数据绑定问题时,我发现以下内容不会引发无效的成员异常,如果我没记错的话,应该这样做。 MSDN还记录了此异常here的存在,但为什么不抛出?

namespace EnumDataBinding
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            ComboBox box = new ComboBox();

            // EXPECT: DataMember not found exception
            // RESULT: Exception not thrown!
            box.DataBindings.Add("Text", new Entity(), "asdhjgfjhrt");
        }

        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
        }
    }


    public class Entity
    {
        public string MyProperty { get; set; }
    }
}

1 个答案:

答案 0 :(得分:0)

因为您尚未将ComboBox添加到容器(表单)中。

public Form1()
 {
  ComboBox box = new ComboBox();
  Controls.Add(box);
  // EXPECT: DataMember not found exception
  // RESULT: Exception not thrown!
  box.DataBindings.Add("Text", new Entity(), "asdhjgfjhrt");
 }