小编Ser*_*kel的帖子

c#windows表单Tab Order

我在C#项目中有一个窗口表单,用于保存学生信息.我抓住了这张照片: 在此输入图像描述

我想按顺序添加顺序数据,但是当我输入数据到Surname文本框时,TAB按钮跳转到电子邮件文本框,然后跳转到电话号码文本框,最后跳转到出生日期DateTimePicker.

除了这些文本框之外,我在窗体上创建了所有控件的TabStop属性"False".我通过属性部分安排了他们的TabOrder,如下所示0,1,2 ..如我所愿.但是正如我上面写的那样,顺序就是这样 然后我通过菜单条上的"查看"打开了Tab Order功能..我点击了我想按顺序使用的所有控件,但没有用.表单和Tab按钮与以前一样.我在下面找到了Tab Order功能图:

在此输入图像描述

我现在该怎么办?

c# tab-ordering winforms

8
推荐指数
2
解决办法
2万
查看次数

以编程方式更改DataGridView单元格值

我有一个datagridview,它有一个数据表作为数据源.我需要手动更改一些单元格值.例如,如果单元格输入值包含字符"g",则在离开单元格时它必须自动更改"abc".以下代码检查当前单元格的格式化值:

private void dgwPNotlar_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
  if (e.ColumnIndex<2||e.ColumnIndex>4||e.FormattedValue.ToString()=="")
  {
    return;
  }

  if (e.FormattedValue.ToString().Contains('G')||e.FormattedValue.ToString().Contains('g'))
  {
    dgwPNotlar.EditMode = DataGridViewEditMode.EditProgrammatically;
    dgwPNotlar.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "abc";
    dgwPNotlar.EndEdit();
    dgwPNotlar.EditMode = DataGridViewEditMode.EditOnEnter;
    return;
  }
}
Run Code Online (Sandbox Code Playgroud)

当代码"dgwPNotlar.EndEdit();" 运行时,我更改的单元格值为"abc",返回上一个值为"g"或"G".

有任何想法吗?

c# datagridview winforms

3
推荐指数
1
解决办法
2万
查看次数

Combobox KeyPressEventHandler

我有一个包含组合框的窗体.我想将KeyPressEventArgs.Handled属性设置为" true"以阻止每个组合框通过键盘输入数据.因为组合框已定义其项目,我不希望用户输入数据.有没有办法通过使用foreach spinnet或类似的方式来做到这一点?

c# combobox keypress event-handling winforms

1
推荐指数
1
解决办法
90
查看次数