我已经使用Infragistics UltraWinGrid在Grid上显示数据。在这个网格中,有一个复选框列。我在此列的标题中添加了复选框以选择所有选项。 现在我想在任何按钮单击事件上启用/禁用此标题复选框来限制用户执行任何操作。 任何人可以告诉我如何做到这一点? 在此先感谢。Infragistics中的Enable/Disable selectAll复选框UltraWinGrid
0
A
回答
0
我能想到的两个选项关闭顶部:
1)如果你不希望用户单击任何复选框,只是隐藏整列,如果他们没有被授权。 2)如果您只想让用户不选择网格中的所有项目,请将代码添加到selectAll方法以在用户未被授权时忽略该请求。
更新
3)如果你正在使用的版本支持它的网格,你可以使用:
grid.DisplayLayout.Override.HeaderCheckBoxVisibility = HeaderCheckBoxVisibility.Never
时如果用户未被授权,包含网格的表单将被加载。
0
标题中的复选框由HeaderCheckBoxUIElement提供,并且它有一个启用属性,可以设置该属性以确定是否启用复选框。要获得对HeaderCheckBoxUIElement的引用,可以使用MouseEnterElement并在该事件中设置Enabled属性。为了跟踪它是否启用,您可以使用该列的Tag属性。
在VB代码:
Private Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
Dim col As UltraGridColumn = Me.UltraGrid1.DisplayLayout.Bands(0).Columns("OnSite")
col.Tag = (TypeOf col.Tag Is Boolean AndAlso CBool(col.Tag) = False)
End Sub
Private Sub UltraGrid1_MouseEnterElement(sender As Object, e As Infragistics.Win.UIElementEventArgs) Handles UltraGrid1.MouseEnterElement
If TypeOf e.Element Is HeaderCheckBoxUIElement Then
Dim element As HeaderCheckBoxUIElement = DirectCast(e.Element, HeaderCheckBoxUIElement)
element.Enabled = (TypeOf element.Column.Tag Is Boolean AndAlso CBool(element.Column.Tag) = True)
End If
End Sub
在C#代码:
void ultraGrid1_MouseEnterElement(object sender, UIElementEventArgs e)
{
if (e.Element is HeaderCheckBoxUIElement)
{
HeaderCheckBoxUIElement element = (HeaderCheckBoxUIElement)e.Element;
element.Enabled = (element.Column.Tag is bool && (bool)element.Column.Tag == true);
}
}
private void button1_Click(object sender, EventArgs e)
{
UltraGridColumn col = this.ultraGrid1.DisplayLayout.Bands[0].Columns["OnSite"];
col.Tag = (col.Tag is bool && (bool)col.Tag == false);
}
相关问题
- 1. 复选框selectAll \ DeselectAll在tableLayout
- 2. Infragistics UltraWinGrid选择新添加的行
- 3. Infragistics的UltraWinGrid EmptyDataText等效?
- 4. Infragistics UltraWinGrid禁用第一列
- 5. Infragistics UltraWinGrid删除确认
- 6. Infragistics UltraWinGrid隐藏有时
- 7. CheckAll复选框,当SelectAll单击在c#
- 8. 如何模仿Infragistics UltraWinGrid中的复制粘贴按键?
- 9. Infragistics的复选框列win wingrid
- 10. Infragistics UltraWinGrid CTRL +使用下拉筛选器时的行为
- 11. Infragistics UltraTree与选定单元格中的复选框
- 12. 如何在JSF-2中创建selectAll复选框
- 13. 如何在c中单击selectAll时检查所有复选框
- 14. 如何在selectAll被选中时选择复选框的所有值?
- 15. LinkButton获取隐藏在AutoPostBack的SelectAll/Header复选框
- 16. 无法使用复选框列在infragistics ultrawridrid上选择多行
- 17. 如何获得Infragistics Ultrawingrid的时间汇总?
- 18. Infragistics的WebDataGrid复选框选中,那么换页=异步REQ失败
- 19. Infragistics WebDataGrid复选框和隐藏的列问题
- 20. 验证失败后还原oryginal值 - infragistics UltraWinGrid
- 21. Infragistics UltraWinGrid列级CellChange事件处理程序
- 22. 获取Infragistics UltraWinGrid在添加或删除行时调整高度
- 23. 有没有办法在Infragistics UltraWinGrid的列中只允许唯一的值?
- 24. 复合框与WinForms中的复选框
- 25. UI-Grid - 如何使用selectAll复选框选择当前页面中显示的记录
- 26. 添加复选框在UltraGrid
- 27. 在UltraWinGrid中只选择一个单元
- 28. 复选框和复选框
- 29. 确定在一组复选框中选中的复选框
- 30. 复选框在HeaderTemplate中选择ItemTemplate中的所有复选框
我觉得第二个选择是好,编写代码来忽略该请求,如果用户没有让做手术。但可以禁用标题复选框吗? –
修改后的答案显示如何在运行时隐藏复选框,具体取决于用户。 –