c#winform中datagridview中某单元格,开始输入内容,然后把输入清空再保存,提示错误。

错误提示:“未将对象引用设置到对象实例”,我们通过对该单元格内容进行判断,如果是null,就给它赋值成"",但是觉得很麻烦,有没有好的解决办法?请高手帮忙吧
我的问题是,我说这种情况是不是必须用代码处理?可不可以通过设置datagridview的属性等方法解决。

可以使用Convert.ToString()方法。正常值转换结果和ToString一样,null的话就会变成“”追问

我想问的是,这种情况是不是必须处理?可不可以通过设置datagridview的属性等方法解决。

追答

似乎还没有这样的属性可以解决你的问题,你是要保存到哪里?会出现问题一定是你显式的调用了Value.ToString()方法,否则不会有这个问题。

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-22
private void dgvAssistUnitList_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
if (dgvAssistUnitList.CurrentCell.ColumnIndex == clUnit.Index)
{
TextBox txt = (TextBox)e.Control;
// 失去焦点是发生
txt .LostFocus += new EventHandler(txt _LostFocus);
}
}

/// <summary>
/// 失去焦点时发生
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void txt _LostFocus(object sender, EventArgs e)
{
1:获得当前单元格的值、
2:判断值是否为null ,如果为null,重新复制为空字符串
}

设置属性?? 没有遇到过、、
第2个回答  2012-03-21
你是要吧数据保存到数据库里面吗?可以设置默认值或者设置成可以为null

c#中用DataGridView工具条中的“删除”按钮删除选中行再点保存提示错误...
1.你的数据库权限设置问题;2.数据库中表之间的关系导致有的值不能随意删除。3.datagridview的删除操作是针对行或列。正常情况下:如果数据库关系正确,将其导入sqldatasource,然后与datagridview绑定,执行删除按钮是可以成功的。回复:DataGridView绑定BindingSource,BindingSource绑定你的数据源。删除时用Bin...

C# Winform DataGridView中输入一单元格内容 回车 后,它向下走,但如果...
因为 DataGridView 的 KeyPress 等按键事件默认不响应 Cell 中的按键, 所以需要重写 DataGridView 控件的按键事件, 如果不想重写, 也可以直接重写整个窗体的按键事件, 如下 protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { if (keyData == Keys.Enter && this.dataGridView...

datagridview在一行的某个单元格输入值后,如果此单元格前面的单元格没...
这是在C#\/winform中 private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e){ int rowindex = e.RowIndex;int colIndex = e.ColumnIndex;if (colIndex != 0){ if (dataGridView1[colIndex - 1, rowindex].Value == null || dataGridView1[colIndex - 1, rowi...

如何实现c# winform DataGridView添加一行,添加数据后,保存到数据...
1、点击添加,实例化一个DataGridView的行对象DataRow 然后把这个对象添加到DataGridView中,你的DataGridView要是可编辑状态,然后编辑数据,点保存循环读取DataGridView的行数据,存到实体类中,在通过后台SQL保存到数据库。2、将datagridview于数据库中对应的表进行绑定,绑定完成之后直接在datagridview中进行...

C# 怎么实现在textbox中填写信息,在datagridview中显示并更新数据库表...
在C#中,实现从文本框中输入信息并显示、更新DataGridView和数据库表,主要涉及数据库操作、数据集构建、DataGridView配置以及与文本框的交互。步骤如下:首先,确保数据库已建立好并准备接收数据。创建一个数据集,如果数据库为空,确保返回一个结构化数据集,即使为空。在页面上添加一个DataGridView控件,...

c# 在datagridview 中 用鼠标选中一行删除并保存到数据库怎么实现...
datagridview.selectrows[0] 这个就是你选中的那一行。可以用datagridview.selectrows[0].cells["列号或者列名"].value来确定这个行的某一个单元格的值。然后在数据库里进行更改。删除datagridview的一行的话用datagridview.rows.remove就可以移除掉。或者重新绑定数据源也行。

c#datagridview中如何编辑单元格,然后保存
你可以下方加一个按钮 "保存"代码:for(int i= 0;i<dgv.Rows.Count;i++){ \/\/取出单元格中的值,我就给你举一个例子,纯手打累死了 string Value = dgv.Rows[i].Cells["Columns1"].Value.ToString();}

C#里怎样清空DataGridview中的数据
1、首先新添加一个按钮(Button控件),修改它的Text属性为“删除第一行数据”。2、双击该按钮,出现代码编辑界面。3、添加如下代码:\/\/如果dataGridView1中没有数据,就不执行删除操作,直接返回\/\/这里之所以是小于等于1,因为空白行也算一行统计在内if (dataGridView1.Rows.Count <= 0){return;}\/\/...

用c#winform拖的datagridview控件,当选中一行数据以后鼠标离开之后...
这个没关系,你只要点击了其中一行就行,然后去做你想要的操作。直接用DataGridView.SelectedIndex。。。获取选中行的值就行了

这个错误,如何解决。c#程序 点击datagridview中得数据 ,报这样的错 ...
arguementoutofrangeException 看报的错误类型就很明显是取值超出范围了。打断点瞧瞧datagridview最后取出来的数据是什么情况

相似回答