【发布时间】:2011-08-02 09:12:57
【问题描述】:
我正在创建一个自定义的列表视图标题,它具有标题文本,但也有一个文本框,您可以输入该文本框来过滤该列的内容。我的代码目前如下所示:
<UserControl.Resources>
<DataTemplate x:Key="myHeaderTemplate">
<StackPanel>
<TextBlock FontSize="14" Foreground="DarkBlue" Margin="20,4" Text="{Binding}" />
<TextBox Text="" Margin="4,2" />
</StackPanel>
</DataTemplate>
</UserControl.Resources>
这是包含texbox的标题数据模板的定义;和列表视图
<ListView ItemsSource="{Binding Path=MyData}" IsSynchronizedWithCurrentItem="True">
<ListView.View>
<GridView>
<GridViewColumn Header="Last Name" HeaderTemplate="{StaticResource myHeaderTemplate}"
DisplayMemberBinding="{Binding Path=Something}" />
<GridViewColumn Header="First Name" HeaderTemplate="{StaticResource myHeaderTemplate}"
DisplayMemberBinding="{Binding Path=Something}" />
<GridViewColumn Header="Address" HeaderTemplate="{StaticResource myHeaderTemplate}"
DisplayMemberBinding="{Binding Path=Tube}" />
</GridView>
</ListView.View>
</ListView>
我希望能够构建一个过滤器语句,我可以将其应用于列表视图行,但要做到这一点,我必须从标题模板中的每个过滤器文本框中获取数据。
我可以以某种方式将标题中的文本框绑定到我的视图模型上的属性吗?如果没有,还有其他方法可以获取文本吗?
感谢您的帮助。
【问题讨论】:
标签: wpf listview binding listbox datatemplate