WPF的DataGridTemplateColumn中CheckBox绑定失效的问题

<DataGrid
    Margin="3"
    dd:DragDrop.IsDragSource="True"
    dd:DragDrop.IsDropTarget="True"
    BorderThickness="0"
    IsReadOnly="False"
    ItemsSource="{Binding TargetItems}"
    SelectedItem="{Binding SelectedTarget}"
    Style="{StaticResource DataGridStyle1}">
    <DataGrid.Columns>
        <DataGridTextColumn
            Width="*"
            Binding="{Binding Name}"
            ElementStyle="{StaticResource TextColumnElementCenterStyle}"
            Header="字段名"
            IsReadOnly="True" />
        <DataGridTemplateColumn
            Width="80"
            Header="降序"
            IsReadOnly="False">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <CheckBox
                        HorizontalAlignment="Center"
                        IsChecked="{Binding DESC, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                        Style="{StaticResource CheckBoxBaseStyle}" />
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
    <DataGrid.ContextMenu>
        <ContextMenu>
            <MenuItem Command="{Binding DeleteCommand}" Header="删除" />
        </ContextMenu>
    </DataGrid.ContextMenu>
    <!--<i:Interaction.Triggers>
        <i:EventTrigger EventName="MouseDoubleClick">
            <prism:InvokeCommandAction Command="{Binding TargetDoubleClickCommand}" />
        </i:EventTrigger>
    </i:Interaction.Triggers>-->
</DataGrid>

CheckBox绑定的时候加上UpdateSourceTrigger=PropertyChanged就可以了。

posted @ 2024-07-26 10:20  wzwyc  阅读(184)  评论(0)    收藏  举报