Aktivieren/Deaktivieren Sie Kontrollkästchen mit der Leertaste/Enter in gridview in listview wpf

Ich habe eine GridView mit CheckBox als eine Spalte und TextBlock einer anderen Spalte. Hier ist die XAML code:

<ListView.View>
    <GridView>
        <GridView.ColumnHeaderContainerStyle>
            <Style>
                <Setter Property="UIElement.Visibility"
                        Value="Collapsed"/>
            </Style>
        </GridView.ColumnHeaderContainerStyle>

        <GridViewColumn>
            <GridViewColumn.CellTemplate>
                <DataTemplate>
                    <CheckBox Tag="{Binding}"
                              IsChecked="{Binding Path=IsFormChecked, Mode=TwoWay}"
                              IsEnabled="{Binding Path=IsUnRestricted}"
                              IsThreeState="False" 
                              UIElement.KeyUp="CheckBox_KeyUp" />
                </DataTemplate>
            </GridViewColumn.CellTemplate>
        </GridViewColumn>

        <GridViewColumn Width="auto">
            <GridViewColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock Width="600"
                               Tag="{Binding}"
                               IsEnabled="{Binding Path=IsUnRestricted}"
                               Text="{Binding Path=FormName}" 
                               MouseUp="TextBlock_MouseUp">
                        <TextBlock.ToolTip>
                            <TextBlock Text="{Binding Path=FormName}"/>
                        </TextBlock.ToolTip>
                    </TextBlock>
                </DataTemplate>
            </GridViewColumn.CellTemplate>
        </GridViewColumn>
    </GridView>
</ListView.View>

Wenn ich Zugriff auf diese GridView mit der Tastatur die komplette Zeile wird ausgewählt (CheckBox sowie TextBlock). Jetzt, an diesem Punkt, wenn ich drücken Sie die space-Taste, passiert nichts. Wenn ich will, um den Zugriff auf die CheckBox mit der Tastatur muss ich drücken Sie die tab-Taste einmal, um so mehr, dass der Fokus auf die checkbox-und die kann ich aktivieren/deaktivieren Sie es mit der Leertaste. Was ich tun möchte, ist , wenn der Fokus auf der Zeile will ich aktivieren/deaktivieren Sie Kontrollkästchen, die mit nur einer Taste drücken der Leertaste.

InformationsquelleAutor quitprog | 2013-06-05
Schreibe einen Kommentar