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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了即使禁用RadGridView GridViewSelectColumn仍然可以选择相关的知识,希望对你有一定的参考价值。

我正在使用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

答案

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

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

意味着,如果禁用/启用它并不重要 - 当您选择行时,正在选中复选框。您可能正在寻找CheckBox Column(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>

最好的祝福,

马修

以上是关于即使禁用RadGridView GridViewSelectColumn仍然可以选择的主要内容,如果未能解决你的问题,请参考以下文章

RadGridView.RowDetailsTemplate 内的 CaliburnMicro 绑定视图

RadGridView 检测 CellClick 事件按钮

Telerik WinForm RadGridView清除过滤

RadGridView添加序号列

Flutter中包含GridViews和ListViews的ListView

Telerik radGridView添加childrow