Grid控件绑定bindingSource后在新增行时设置Cell的初始值

      问题不是高深的问题,只是希望能静下心来记录项目中所遇到的种种问题。

       举个例子,有一个第三方提供的Grid控件, 界面显示就是简单的对象集合
        private void Form2_Load(object sender, EventArgs e)
        {
            IList<Entity1> list = new List<Entity1>() { new Entity1 { Name = "1", Age = 11 }, new Entity1 { Name = "2", Age = 22 } };
            this.bindingSource1.DataSource = list;
        }
     注:Entity1类只有Name和Age属性

     Grid控件上显示的结果为:
     Name  Age
      1        11
      2        22
    
    在点击“新增行”时,有一个新的要求,就是“Grid控件上需要增加一行,并且Age的值默认是20”。  显示为:
      Name  Age
      1        11
      2        22
                20
 实现该要求的方法不一,这里使用bindingsource的AddingNew事件来实现
private void bindingSource1_AddingNew(object sender, AddingNewEventArgs e)
        {
            Entity1 newObject = new  Entity1();
            newObject.Age = 20;//设置初始值
            e.NewObject = newObject;
        }

你可能感兴趣的:(Grid控件绑定bindingSource后在新增行时设置Cell的初始值)