首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

dataGridView 新加行 设定添加默认值,该如何处理

2012-04-10 
dataGridView 新加行 设定添加默认值我用dataGridView来做添加新记录操作,想设定一些默认值。代码如下:C# c

dataGridView 新加行 设定添加默认值
我用dataGridView来做添加新记录操作,想设定一些默认值。代码如下:

C# code
private void dataGridView1_DefaultValuesNeeded(object sender, DataGridViewRowEventArgs es)        {            // 设定单元格的默认值            es.Row.Cells["myclass"].Value = 0;            es.Row.Cells["sex"].Value = "男";            es.Row.Cells["password"].Value = "1";        }


为什么当我添加新行时,并未触发这个函数,添加的记录里也没有这些默认值。

[解决办法]
DefaultValuesNeeded事件只有当datagridview选中“启用添加”,并且是用户鼠标进入带*的新行才会触发,用代码添加新行是不会触发的。你必须使用
dgvMeter.Rows.Add(内容,内容,...);设定默认值。
[解决办法]
http://www.qimao.cn/article.asp?id=181

如果这种方式搞不定你可以试试别的啊 
像这里的第二种
未验证,仅供参考
[解决办法]


1.默认值,加载页面,先绑定字段就基本OK了(可加入控件隐藏辅助)

2.添加的时候赋值 

3.加入多字段原始值约束这样可以避免并发(可内存操作增删改)性能比较好!

[解决办法]
C# code
       //绑定字段        public void Binding()        {            this.TxtMachineNo.DataBindings.Add("Text", dt, "MachineNo");            this.TxtMachineCode.DataBindings.Add("Text", dt, "MachineCode");            this.TxtPartCode.DataBindings.Add("Text", dt, "PartCode");            this.TxtPartName.DataBindings.Add("Text", dt, "PartName");            //this.CbValidity.DataBindings.Add("Checked", dt, "DelFlg");            this.TxtChanger.DataBindings.Add("Text", dt, "Changer");            this.TxtChangeDate.DataBindings.Add("Text", dt, "ChangeDate");            this.DgvMachinePart.DataSource = dt;        } 

热点排行