【问题标题】:How to prevent clicking on a checkbox from firing the datagrid's selection_changed - Silverlight 3如何防止单击复选框触发数据网格的 selection_changed - Silverlight 3
【发布时间】:2010-02-25 08:53:13
【问题描述】:

我目前正在使用 Datagrid 绑定到 Silverlight 3 中的项目列表。每行有两个复选框。任何人请帮助我如何防止 Datagrid 每次单击任何复选框时触发 Selection_Changed 事件?我已经坚持了几天,截止日期快到了。

                                    </DataTemplate>                                        
                                </data:DataGridTemplateColumn.CellTemplate>
                            </data:DataGridTemplateColumn>

                            <data:DataGridTemplateColumn Header="Track" SortMemberPath="IsTracked" CanUserResize="False" CanUserReorder="False">
                                <data:DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
                                            <CheckBox  
                                                  Tag="{Binding unitID, Mode=OneWay}" 
                                                  Click="ShowB_Clicked" IsChecked="{Binding IsTracked, Mode=TwoWay}"></CheckBox>

                                    </DataTemplate>
                                </data:DataGridTemplateColumn.CellTemplate>
                            </data:DataGridTemplateColumn>
                        </data:DataGrid.Columns>

当我单击任一复选框时,Datagrid 的 dgList_SelectionChanged 将被触发,并且 SelectedIndex/Item 也更改为包含单击复选框的行。我想要的是不更改数据网格的 SelectedItem,换句话说,不触发 dgList_SelectionChanged。

请帮忙。

提前非常感谢。

Middlevn

【问题讨论】:

  • 你能再清楚一点。您是否希望您的数据网格在复选框选择更改时不刷新?
  • 嗨马尔科姆。我更新了帖子以使其更详细。

标签: datagrid


【解决方案1】:

遇到类似问题,开始考虑在复选框上放置透明图像以防止单击,然后使用单元格更改事件获取复选框值,然后在当前单元格更改时将当前单元格设置为其他内容。

我等不及对 html5 的更好支持,所以我可以转储这个 MS 垃圾

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-27
    • 2012-07-10
    • 1970-01-01
    • 2014-11-12
    相关资源
    最近更新 更多