如何让datagridview单元格只能输入数字

myloveangel 2007-01-10 11:21:06
如何让datagridview单元格只能输入数字,不能输入文本字符。
...全文
1070 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lizhengnan 2008-11-13
  • 打赏
  • 举报
回复
在keyPress事件里做,

private void dgv_KeyPress(object sender, KeyPressEventArgs e)
{
if (dgv.Columns[dgv.CurrentCell.ColumnIndex].Name == "money" && dgv.CurrentCell.IsInEditMode)
{
if (e.KeyChar < '0' || e.KeyChar > '9') {
e.Handled = true;
}
}
}
辉之不趣 2008-11-13
  • 打赏
  • 举报
回复
设置单元格的 name,然后用js 获取它,再控制
liaodane 2008-11-13
  • 打赏
  • 举报
回复
值得探讨
syymling 2008-11-13
  • 打赏
  • 举报
回复
帮不了你,不过你的datagridview的每个类都有类型的吧,即使只能输入数字的单元格输入了字符,输入完后,也会弹出错误信息的吧
Aaron_Liu001 2008-11-13
  • 打赏
  • 举报
回复
ding
fuyuxin19801120 2008-11-13
  • 打赏
  • 举报
回复
正规表达式
hjckeytolove 2008-11-13
  • 打赏
  • 举报
回复
private void tb_id_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar != 8 && !char.IsDigit(e.KeyChar))
{
MessageBox.Show("只能输入数字", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
e.Handled = true;
}
}
s1240s1240 2008-11-13
  • 打赏
  • 举报
回复
就是用format限定
Aaron_Liu001 2008-11-13
  • 打赏
  • 举报
回复
楼主快给分
Aaron_Liu001 2008-11-13
  • 打赏
  • 举报
回复
private void dgScore_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
// Validate the ColumnIndex == 6 ,7,8 entry

if (e.ColumnIndex == 6 || e.ColumnIndex ==7 || e.ColumnIndex == 8)
{
try
{
if (String.IsNullOrEmpty(e.FormattedValue.ToString()))
{
}
else
{
decimal val = decimal.Parse(e.FormattedValue.ToString());
}
}
catch (Exception ex)
{
dgScore.Rows[e.RowIndex].ErrorText = "必须输入数字";
MessageBox.Show("请输入数字 ");
e.Cancel = true;
}
}
}
emanlee 2007-01-11
  • 打赏
  • 举报
回复
可能用某个列的format属性来设置。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧