标签: currentitem

使用制表符按钮重新进入后,DataGrid CurrentItem!= SelectedItem

这个简单的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?

我希望有一个简单的解决方案!你会帮助我很多.提前致谢...

wpf datagrid focus selecteditem currentitem

7
推荐指数
1
解决办法
5270
查看次数

绑定到ItemsControl中的CurrentItem

下面的XAML基本上是尝试创建一个Buttons 列表(从当前集合中Name对象的属性呈现).ViewsDataContext

当我单击按钮时,CurrentItem属性CollectionViewSource应该更改,关联View应该显示在内容呈现器中.

好.如果我点击ListBox下面的XAML,它可以完全按照要求工作.

但是,如果单击UniformGrid(由项目控件创建)中的按钮,CurrentItem则不会更新该属性.

如何CurrentItemItemsControl?中选择项目时更新?

谢谢

<UserControl x:Class="Pos.Features.Reservation.ReservationView"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:product="clr-namespace:Pos.Features.ProductBrowser"
             xmlns:activity="clr-namespace:Pos.Features.ActivityBrowser"
             xmlns:addbysku="clr-namespace:Pos.Features.AddBySku"
             xmlns:client="clr-namespace:Pos.Features.ClientBrowser"
             xmlns:notes="clr-namespace:Pos.Features.Notes"
             xmlns:controls="clr-namespace:Pos.Views"
             xmlns:res="clr-namespace:Pos.Core;assembly=Pos.Core"
             Height="300" Width="300">
    <UserControl.Resources>
        <DataTemplate DataType="{x:Type product:ProductBrowserViewModel}">
            <product:ProductBrowserView/>
        </DataTemplate>
        <DataTemplate DataType="{x:Type activity:ActivityBrowserViewModel}">
            <activity:ActivityBrowserView/>
        </DataTemplate>

        <CollectionViewSource x:Name="x" x:Key="ViewsCollection" Source="{Binding Views}"  />
    </UserControl.Resources>

    <StackPanel>
        <ListBox Name="ListBoxMenu" Grid.Column="0" Margin="5" ItemsSource="{Binding Source={StaticResource ViewsCollection}}">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Name}" Padding="10"/>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
        <ContentControl Grid.Column="1" Content="{Binding …
Run Code Online (Sandbox Code Playgroud)

data-binding wpf itemscontrol collectionviewsource currentitem

3
推荐指数
1
解决办法
1万
查看次数