无法禁用 UltraGrid 单元格
Cannot disable UltraGrid cells
我的项目中有一个 UltraGrid。数据可以输入到每个单元格中,然后保存到数据库中。我希望能够禁用当前行中的所有单元格,除了一个名为 Product_Code
的单元格。将数据输入活动行列后(通过 ValueList
输入),我希望所有其他单元格都可用于输入数据。
到目前为止我已经试过了
If Me.ugProducts.ActiveRow.Cells("Product_Code").Value.ToString = "" Then
Me.ugProducts.ActiveRow.Cells("Product_Volume").Activation = Activation.Disabled
Else
Me.ugProducts.ActiveRow.Cells("Product_Volume").Activation = Activation.AllowEdit
End If
但没有成功。构建项目后,所有单元格都可以立即输入,尽管没有输入任何值。
为什么不起作用?最好的方法是什么?
我在这里看到之前的一条评论,由于某种原因已经被删除了......但是,您可以尝试的一个解决办法是:
- 在表单加载;添加
ugProducts.DisplayLayout.Override.CellClickAction = CellClickAction.CellSelect
- 这将意味着所有单元格都被禁用,但您仍然可以 select ValueList
for Product_Code
- 现在,在
ugProducts
的 CellListSelect
事件中,使用以下代码 ugProducts.DisplayLayout.Override.CellClickAction = CellClickAction.Edit
(在进行任何验证检查或方法中已有的任何内容后,它将进入在这里的某个地方,如果你不太确定在哪里,就继续尝试)
无论如何,这现在应该可以让您随意填写它们了。
我的项目中有一个 UltraGrid。数据可以输入到每个单元格中,然后保存到数据库中。我希望能够禁用当前行中的所有单元格,除了一个名为 Product_Code
的单元格。将数据输入活动行列后(通过 ValueList
输入),我希望所有其他单元格都可用于输入数据。
到目前为止我已经试过了
If Me.ugProducts.ActiveRow.Cells("Product_Code").Value.ToString = "" Then
Me.ugProducts.ActiveRow.Cells("Product_Volume").Activation = Activation.Disabled
Else
Me.ugProducts.ActiveRow.Cells("Product_Volume").Activation = Activation.AllowEdit
End If
但没有成功。构建项目后,所有单元格都可以立即输入,尽管没有输入任何值。
为什么不起作用?最好的方法是什么?
我在这里看到之前的一条评论,由于某种原因已经被删除了......但是,您可以尝试的一个解决办法是:
- 在表单加载;添加
ugProducts.DisplayLayout.Override.CellClickAction = CellClickAction.CellSelect
- 这将意味着所有单元格都被禁用,但您仍然可以 selectValueList
forProduct_Code
- 现在,在
ugProducts
的CellListSelect
事件中,使用以下代码ugProducts.DisplayLayout.Override.CellClickAction = CellClickAction.Edit
(在进行任何验证检查或方法中已有的任何内容后,它将进入在这里的某个地方,如果你不太确定在哪里,就继续尝试)
无论如何,这现在应该可以让您随意填写它们了。