2011-10-09 24 views
1

我有一個ListView,其視圖在運行時在圖標模式和網格模式(後者使用GridView實現)之間動態切換。 問題是,正如我描述的here,當我在我的ListView定義中添加ListView.GroupStyle時,圖標模式被擰緊。因此,我想重置/禁用該模式的GroupStyle。動態設置XAML中的ListView.GroupStyle?

所以,我的問題:是否有一種方法來動態地應用/重置GroupStyle(通過觸發?)當我切換ListView到網格模式?

我試圖做到這一點(例如<Setter Property="ListView.GroupStyle" Value="{x:Null}"/>)的圖標視圖,但這不會編譯,因爲「屬性設置'GroupStyle'無法設置,因爲它沒有可訪問的設置訪問器。」

任何建議將熱忱歡迎:-)

回答

0

可能有兩種方法可以做到這一點...

  1. 而不是設置的GroupStylex:Null保留現有的設置GroupStyle,因爲它是但使用TemplateBinding重置其內部模板使用DataTrigger s。

  2. 使用自下而上的方法,根據模式從CollectionView中刪除您的GroupDescriptions

+0

AngelWPF,謝謝你的回答。 第二種方法不適用於我,因爲問題出在GroupStyle定義本身上(即使根本沒有GroupDescriptions)。 至於第一個 - 我不知道我在跟着...你能給一個代碼片段來說明你的意思嗎? – Alex