我創建了一個listview(在xaml中),其中我使用了帶有DisplayMemberBinding的GridViewColumn來顯示ViewModel的屬性。在ListView中過濾數據[mvvm]
<ListView x:Name="MyListView" ItemsSource="{Binding DataContent}">
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding UserName}"/>
<GridViewColumn DisplayMemberBinding="{Binding LastName}"/>
</GridView>
</ListView.View>
</ListView>
一切工作正常。我可以在列表視圖中看到DataContent的內容。 現在我想要有一種listview過濾器。用戶可以在文本框中輸入當前在DataContent中的每個項目中搜索的字符串。 DataContent中的項目具有名爲「IsShown」的布爾屬性。如果在「UserName」屬性中找不到輸入的字符串,則該屬性設置爲false,否則爲true。
我現在需要的是: listview中的每一行都沒有匹配的用戶名,必須隱藏起來。 我想我可以在這裏以某種方式使用屬性IsShown(在視圖模型),這是可用的每一行。 當用戶從文本框中刪除或更改字符串時,將再次搜索DataContent的內容,並在必要時修改IsShown。 listview必須再次更新。只顯示行,其中「IsShown」爲真。
我該怎麼做?
謝謝你,我會檢查這個。似乎是我的問題的解決方案。 – Ferhat 2010-12-16 18:53:22