nav*_*ato 7 wpf datagrid focus selecteditem currentitem
这个简单的WPF-DataGrid
<DataGrid AutoGenerateColumns="False" Height="300" HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" Name="dgOriginal" Margin="4,12,0,0"
CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="False" IsSynchronizedWithCurrentItem="True"
CanUserSortColumns="False" SelectionMode="Single" SelectionUnit="FullRow">
<DataGrid.Columns>
<DataGridCheckBoxColumn x:Name="col2Checked"/>
<DataGridTextColumn x:Name="col2Name"/>
<DataGridTextColumn x:Name="col2Vorname"/>
</DataGrid.Columns>
Run Code Online (Sandbox Code Playgroud)
它显示了一个没有问题的绑定列表,在获得焦点时表现得很奇怪:首先,用户选择了一行,这使得datagrid以选定的方式显示该行(SelectedItem和CurrentItem包含所选对象) .然后重点关注另一个控件.在此状态 - 仍然显示选择 - 当CurrentItem为null时,SelectedItem仍然存在!然后通过使用TAB-Button重新调整焦点.这使得CurrentItem成为第一个在SelectedItem未更改时显示的对象.因此,CurrentItem不会与SelectetItem一起处于可在DataGrid中看到的状态.而且我觉得自己有什么好处......
我的qustion是:如何建议DataGrid具有在焦点丢失之前选择的相同CurrentItem?如何同步CurrentItem和SelectedItem?
我希望有一个简单的解决方案!你会帮助我很多.提前致谢...
通常我将 绑定SelectedItem
到 中的一个属性DataContext
,并设置IsSynchronizedWithCurrentItem
为 false。
<DataGrid ItemsSource="{Binding SomeCollection}"
SelectedItem="{Binding SelectedItem}" />
Run Code Online (Sandbox Code Playgroud)
将IsSyncrhonizedWithCurrentItem设置为 true 将使SelectedItem
Control 的 与CurrentItem
集合的属性同步,但是我对此遇到了问题,因为我并不总是了解如何CurrentItem
获取和维护其值。
归档时间: |
|
查看次数: |
5270 次 |
最近记录: |