【发布时间】:2017-06-14 19:26:18
【问题描述】:
我有一个带有分层模板的 rad 网格视图。用户可以展开每一行,在普通模式下用户可以展开多行。我需要防止这种行为,让用户一次只能展开一行。
我在 Telerik 论坛和 Google 中进行了搜索,但没有找到任何适用于 winforms radgridview 的有用代码。
【问题讨论】:
标签: c# winforms telerik radgridview
我有一个带有分层模板的 rad 网格视图。用户可以展开每一行,在普通模式下用户可以展开多行。我需要防止这种行为,让用户一次只能展开一行。
我在 Telerik 论坛和 Google 中进行了搜索,但没有找到任何适用于 winforms radgridview 的有用代码。
【问题讨论】:
标签: c# winforms telerik radgridview
捕获展开事件,并在其中折叠所有行,因此新展开的行将是唯一展开的行。
【讨论】:
使用 radGridView 的ChildViewExpanded event 和一个变量来存储最后展开的row index
int lastExpandedRow = -1;
private void radGridView_ChildViewExpanded(object sender, ChildViewExpandedEventArgs e)
{
int parentRowIndex = e.ParentRow.Index;
if (lastExpandedRow != -1 && lastExpandedRow != parentRowIndex )
{
radGridView.Rows[lastExpandedRow].IsExpanded = false;
}
lastExpandedRow = parentRowIndex ;
}
【讨论】: