我想像搜索一样实现Visual Studio。现在我想让它搜索我的UserControls
,点击它就可以在Tab
中打开它们。
我不是在寻找代码,只是为了正确的指导方针和正确的术语来尝试实现这一点。
谢谢你的任何建议。
示例:
答案 0 :(得分:0)
要在UserControl
集合中搜索,我会使用LINQ
。
List<UserControl> results = (from UserControl control in list_of_usercontrols where (control.SomeParameter.ToLower().Contains(SearchParameter) || control.OtherParameter.ToLower().Contains(SearchParameter)) && nnn.IsEnabled select nnn).Distinct().ToList();
为了显示结果,我强烈推荐ListView
。我用它在我的WPF应用程序中显示结果,它非常快。
listView1.ItemsSource = results;
您可以为ItemTemplate
设置ListView
。
<ListView Grid.Row="1" Name="listView1" BorderThickness="0" SelectionMode="Single" >
<ListView.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Label FontSize="15" >
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding SomeProperty}"></TextBlock>
<TextBlock Text="{Binding OtherProperty}"></TextBlock>
<TextBlock Text="{Binding ThirdProperty}" ></TextBlock>
</StackPanel>
</Label>
<Label Content="{Binding FourthProperty}" Grid.Row="1" Padding="5,0,0,5"></Label>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>