gpt4 book ai didi

wpf - 通过键入在 Wpf 数据网格中查找记录

转载 作者:行者123 更新时间:2023-12-01 23:15:09 28 4
gpt4 key购买 nike

我有一个绑定(bind)到 Observable Members 集合的数据网格。现在我想通过输入成员名称来查找数据网格中的成员。我尝试过 IsTextSearchEnable 属性,但它没有搜索。这是我的 xaml。

<DataGrid Name="dgOtherCharges" AutoGenerateColumns="False" RowHeight="25" Grid.Row="4" AlternatingRowBackground="{StaticResource AlternateRowBackgroundBrush}" Grid.ColumnSpan="3" IsTextSearchEnabled="True" TextSearch.Text="Name"
CanUserAddRows="False" HeadersVisibility="Column" SelectionUnit="Cell" ItemsSource="{Binding Path=MembersCollection,Mode=TwoWay}" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"
VerticalGridLinesBrush="{StaticResource GridLineColorBrush}" HorizontalGridLinesBrush="{StaticResource GridLineColorBrush}">
<DataGrid.Resources>
<Style TargetType="{x:Type DataGridCell}">
<Style.Triggers>
<Trigger Property="DataGridCell.IsSelected" Value="True">
<Setter Property="Background" Value="{StaticResource ButtonSelectedBrush}" />
<Setter Property="BorderBrush" Value="#A8E3FC" />
<Setter Property="Foreground" Value="Black" />
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.Resources>

<DataGrid.Columns>

<DataGridCheckBoxColumn Binding="{Binding IsCheck,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Width="50">
<DataGridCheckBoxColumn.ElementStyle>
<Style TargetType="CheckBox">
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Center"/>
</Style>
</DataGridCheckBoxColumn.ElementStyle>
</DataGridCheckBoxColumn>
<DataGridTextColumn Header="Member Name" Binding="{Binding Name,Mode=TwoWay}" IsReadOnly="True" Width="*"/>


</DataGrid.Columns>
</DataGrid>

我需要一个快速的解决方案,伙计们

最佳答案

我今天偶然发现了这个问题,以找到同一问题的解决方案。虽然 TextSearch 显然在 2012 年还不可用,但目前已经可用。

因此,为了将来引用,下面是我当前针对此问题的解决方案,其中添加了三个属性:IsTextSearchCaseSensitiveIsTextSearchEnabledTextSearch.TextPath

<DataGrid ItemsSource="{Binding Path=Directories, Mode=OneWay}"
SelectedItem="{Binding Path=SelectedDirectory, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
EnableRowVirtualization="False"
EnableColumnVirtualization="True"
VirtualizingStackPanel.IsVirtualizing="False"
VirtualizingStackPanel.VirtualizationMode="Standard"
IsTextSearchCaseSensitive="False"
IsTextSearchEnabled="True"
TextSearch.TextPath="Name">
<DataGrid.Columns>
<DataGridTemplateColumn Header="Name" SortMemberPath="Name" />
</DataGrid.Columns>
</DataGrid>

关于wpf - 通过键入在 Wpf 数据网格中查找记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13815607/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com