RadGridView GridViewSelectColumn即使禁用仍然可以选择

时间:2018-09-03 01:31:13

标签: wpf silverlight gridview telerik radgridview

我正在使用Telerik Gridview向用户提供全选选项。 我正在使用样式来禁用一些复选框,效果很好。但是,用户仍然可以通过单击禁用复选框或全部选中来选择禁用。 有人可以帮忙吗?  预先感谢

<TelerikGridView:RadGridView  
                  Name="dataGridView" 
                  Height="485"
                  Grid.Row="0"                                    
                  AutoGenerateColumns="False" 
                  ItemsSource="{Binding Path=Items, Mode=TwoWay}"
                  IsReadOnly="False"
                  IsFilteringAllowed="True"
                  CanUserInsertRows="False"
                  SelectionMode="Multiple"                                    
                  CanUserSelect="True"
                  CanUserDeleteRows="False"
                  AlternationCount="2" >

<TelerikGridView:RadGridView.Resources>
    <Style x:Key="CheckBoxStyle" TargetType="CheckBox">
        <Setter Property="IsEnabled" Value="{Binding IsReady}"></Setter>
        <Setter Property="IsHitTestVisible" Value="{Binding IsReady}"></Setter>
        <Setter Property="IsChecked" Value="{Binding IsReady,Mode=OneWay}"></Setter>
    </Style>
</TelerikGridView:RadGridView.Resources>

<TelerikGridView:RadGridView.Columns>

    <TelerikGridView:GridViewSelectColumn CheckBoxStyle="{StaticResource CheckBoxStyle}" IsReadOnly="{Binding IsReady}"/>

enter image description here

1 个答案:

答案 0 :(得分:0)

在文档(https://docs.telerik.com/devtools/wpf/controls/radgridview/columns/columntypes/column-types-select-column)中说过

  

它允许您通过复选框选择给定的行,换句话说-每个CheckBox的IsChecked属性都绑定到相应行的IsSelected属性。

表示,禁用/启用并不重要-选择行时,选中复选框。您可能正在寻找CheckBox列(https://docs.telerik.com/devtools/wpf/controls/radgridview/columns/columntypes/checkbox-column

或带有复选框模板的DataColumn,如下:

    <telerik:GridViewDataColumn.CellTemplate>
                        <DataTemplate>
                            <CheckBox IsChecked="{Binding MyData, Mode=TwoWay}"
                                      HorizontalAlignment="Center"                                      
                                       />
                        </DataTemplate>
                    </telerik:GridViewDataColumn.CellTemplate>

最好的问候,

Mateusz