Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 超级网格标头复选框_C#_.net_Checkbox_Infragistics_Ultrawingrid - Fatal编程技术网

C# 超级网格标头复选框

C# 超级网格标头复选框,c#,.net,checkbox,infragistics,ultrawingrid,C#,.net,Checkbox,Infragistics,Ultrawingrid,我有一个超级网格,列“a”有一个复选框。我如何知道我的所有行上是否选中了此列?因为有一个通用的复选框可以通过使用CheckAll()函数来改变我所有行中列“a”的状态,所以它必须是一种知道我所有行是否都选中了该列的方法,对吗 提前谢谢 顺便说一句:我尝试使用GetHeaderCheckedState函数,但由于我有group by rows,我需要使用GetAllNonGroupByRows()函数返回一个UltraGridRow数组,GetHeaderCheckedState函数只接收一个Ro

我有一个超级网格,列“a”有一个复选框。我如何知道我的所有行上是否选中了此列?因为有一个通用的复选框可以通过使用CheckAll()函数来改变我所有行中列“a”的状态,所以它必须是一种知道我所有行是否都选中了该列的方法,对吗

提前谢谢

顺便说一句:我尝试使用GetHeaderCheckedState函数,但由于我有group by rows,我需要使用GetAllNonGroupByRows()函数返回一个UltraGridRow数组,GetHeaderCheckedState函数只接收一个RowsCollection。。。有没有办法将UltraGridRow[]转换为RowsCollection


PS:我不知道这是否有什么不同,但这是C#中的一个非web应用程序。

根据您的场景,您可以使用
超级网格
上的
前headercheckstateChanged
后headercheckstateChanged
事件。这将允许您对传入的
EventArgs
使用
RowCollection
属性。例如:

private void ultraGrid1_BeforeHeaderCheckStateChanged(object sender, BeforeHeaderCheckStateChangedEventArgs e)
{
    ultraGrid1.DisplayLayout.Bands[0].Columns[0].GetHeaderCheckedState(e.Rows);
}
ultraGrid1.DisplayLayout.Bands[0].Columns[0].GetHeaderCheckedState(ultraGrid1.ActiveRow.ChildBands[0].Rows);
如果这种方法不适合您的场景,您可以使用父行。例如:

private void ultraGrid1_BeforeHeaderCheckStateChanged(object sender, BeforeHeaderCheckStateChangedEventArgs e)
{
    ultraGrid1.DisplayLayout.Bands[0].Columns[0].GetHeaderCheckedState(e.Rows);
}
ultraGrid1.DisplayLayout.Bands[0].Columns[0].GetHeaderCheckedState(ultraGrid1.ActiveRow.ChildBands[0].Rows);