2015-04-01 23 views
0

是否可以基於其他控件的視覺狀態在Grid或其他元素上設置可見性?我只是開始圍繞VisualStateManager概念(發現風格觸發器不能用於通用應用程序)的概念,但如果這可以完成或無法完成,則無法解決。基於另一個控件的視覺狀態設置可視性

在我的具體情況下,如果當前選擇了ListView中的特定項目/索引,我可以設置一個或多個元素的可見性嗎?如果是這樣,怎麼樣?

回答

0

我會保留視圖模型屬性中的ListView選擇,並將Grid.Visibility綁定到該屬性。您需要IValueConverter才能將所選項目的數據類型轉換爲System.Windows.Visibility,這是Grid.Visibility綁定所需的。

如果確定可見度的邏輯比較複雜,需要應用程序狀態,則可以將屬性bool IsImportantItemSelected添加到視圖模型並將Grid.Visibility綁定到此屬性。這種方法允許您在視圖模型中保留複雜的邏輯。您需要再次使用IValueConverter才能將bool轉換爲System.Windows.Visibility

+0

謝謝西爾弗斯坦。這有助於推動我朝着正確的方向取得預期的成果。 – Lindsay 2015-04-10 03:52:28