问题应该是自我解释。我有一个datagridview有一个列的单元格应该只接受正整数在用户输入。如何将valuetype设置为正整数?
所以,我怎么能设置是这样的:
dgv.Columns[i].ValueType = typeof(int > 0);
?
当然我可以在cellValueChanged
事件处理单独的验证。但是,因为我已经全部验证在DataError
事件自动处理(因为我设置VALUETYPE为每列),我想我上面的验证,在这里处理
private void dgv_DataError(object sender, DataGridViewDataErrorEventArgs e)
{
// not fair..
e.Cancel = true;
}
如何?
更新:由于我听到很多关于uint
(正如其中一个答案所提议的)的否定,就像uints不符合CLS,并非所有的语言都支持它等,可以仅用于上面的验证目的吗?
'dgv.Columns [I] .ValueType' ...? – BoltClock 2012-01-08 15:25:50
@BoltClock你的意思是? – nawfal 2012-01-08 15:27:48
CLS遵从性只对公共类有影响,这是用另一种语言编写的代码可以使用的类型。显然这不适用于私人控制。 – 2012-01-08 15:47:06