Radgridview只选择一个细节行

时间:2012-04-23 13:06:02

标签: silverlight telerik radgrid

在我的silverlight应用程序中,我有一个带有radgridview的页面, 这个radgridview有另一个控件作为RowDetailsTemplate。

在这个RowDetailsTemplate中是另一个radgridview,另一个控件是RowDetailsTemplate。 这个RowDetailsTemplate也有一个radgridview。

所有gridview都有几个绑定到我的ViewModel(我用过MVVM)

层次结构如下:

 - RadGridView
      - RadGridView (in fact a seperate control with a gridview, setup as rowdetailstemplate on the parent gridview)
           -RadGridView (in fact a seperate control with a gridview, setup as rowdetailstemplate on the parent gridview)

在我的设置中,您可以为每个网格/细节网格选择一行。

这意味着您可以直观地在整个网格中选择1到N行。 这看起来非常混乱,并不是非常用户友好。

我的问题:

更改此选项的最佳方法是什么,因此只能选择一行,而不是1到N?

1 个答案:

答案 0 :(得分:1)

我不知道这是否是理想的方式..但你可以这样做......

    Private Sub AllGrids_ItemClicked(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) _
    Handles grd1.ItemCommand, grd2.ItemCommand, grd3.ItemCommand
    dim gridSelected as New RadGrid 
    gridSelected = sender
    If e.CommandName = "RowClick" Then
       if gridSelected.ID = grd1.ID then
          For i As Integer = 0 To grdMenu.Items.Count - 1
            If grd2.Items(i).Selected Then
                grd2.Items(i).Selected = False
            End If
           Next
           For i As Integer = 0 To grdMenu.Items.Count - 1
            If grd3.Items(i).Selected Then
                grd3.Items(i).Selected = False
            End If
           Next
       end if
    End If
    '' Do this again for each of the other grids.
End Sub

基本上你会遍历不会导致事件取消选择的网格。