我正在尝试禁用对特定 gridview 单元格的编辑。
我正在使用具有以下属性的 RepositoryItemTextEdit:
repositoryItemTextEdit.AllowFocused = false;
m_repositoryItemTextEdit.ReadOnly = true;
但是,即使我无法更改值,我仍然可以单击单元格并且存在编辑光标。
有没有办法摆脱文本光标?
谢谢
我正在尝试禁用对特定 gridview 单元格的编辑。
我正在使用具有以下属性的 RepositoryItemTextEdit:
repositoryItemTextEdit.AllowFocused = false;
m_repositoryItemTextEdit.ReadOnly = true;
但是,即使我无法更改值,我仍然可以单击单元格并且存在编辑光标。
有没有办法摆脱文本光标?
谢谢
我遇到了同样的问题,在禁用后单元格和编辑光标存在。
我得到了解决方案。
private void tree_ShowingEditor(object sender, CancelEventArgs e)
{
Nodes.PromptNode promptNode = tree.FocusedNode as Nodes.PromptNode;
if (tree.FocusedColumn == valueColumn && promptNode.PromptResult.ValueType.MyValueType == ValueType.ValueTypeOptions.Calculated)
{
e.Cancel = true;
}
}
使用ShowingEditor
事件取消它。
基本上,您必须处理ShownEditor
GridView 的事件。在那里,您测试聚焦的行和列,如果单元格应该是只读的,您可以:
grdView.ActiveEditor.Properties.ReadOnly = True
为了让用户更好理解,您还可以处理CustomDrawCell
事件,并将背景颜色(e.Appearance)设置为用于只读控件的颜色。
这可能有点离题,因为它并没有摆脱光标;但我看不出这会有什么用。