在DataGridView中绑定数据源之后,怎样通过验证输入数据格式是不是与单元格格式一致

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在DataGridView中绑定数据源之后,怎样通过验证输入数据格式是不是与单元格格式一致相关的知识,希望对你有一定的参考价值。

就是说是单元格格式是int类型,而输入时输入了string类型,我要怎么来处理这个问题

可以在datagridview的dataGridView1_CellValidating事件中进行验证
private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)

//假设要对第一列的数据进行验证
if (e.ColumnIndex == 0)

try

if (!String.IsNullOrEmpty(e.FormattedValue.ToString()))

decimal val = decimal.Parse(e.FormattedValue.ToString());


catch (Exception ex)

dataGridView1.Rows[e.RowIndex].ErrorText = "必须输入数字";
MessageBox.Show("请输入数字 ");
e.Cancel = true;



参考技术A try

int doub = Convert.ToInt32(dgvShow.SelectedCells[列的索引值].Value.ToString());

catch

MessageBox.Show("请输入数字!","提示"); return;
参考技术B 用vs的comparevalidtor 或者用js控制,只能输入数字

DataGridView只显示数据源中绑定的字段

场景:

由于环境需要,在获取数据源的时候会获取多于DataGridView中绑定的字段,若不做任何处理,直接将数据源绑定到DataGridView上面,DataGridView就会将数据源中没有绑定的字段显示出来,这样就不符合我们的需求了。

 

DataGridView中有一个属性AutoGenerateColumns来控制这种情况。

在绑定数据源之前将AutoGenerateColumns这个属性设为False,DataGridView就不会显示绑定字段以外的字段。

 

以上是关于在DataGridView中绑定数据源之后,怎样通过验证输入数据格式是不是与单元格格式一致的主要内容,如果未能解决你的问题,请参考以下文章

如何用c#对datagridview刷新, 是否重新绑定一下, 怎样重新绑定。

winform中datagridview绑定后无法显示数据

dataGridView 如何默认选中第一行

dataGridView 如何默认选中第一行

请问DataGridView绑定了数据源之后还要进行啥操作吗?为啥我绑定了不显示数据呢?

如何在不使用 datagridview 的情况下编辑绑定到组合框的数据表中的数据?