我正在爲WPF中的複雜後備模型設計一個表單。一些表單控件的依賴於底層的視圖模型設置了多個選項,所以我已經設置了例如在VS2013中,在設計階段明確設置/忽略可視性?
<TextBlock.Visibility>
<MultiBinding Converter="{StaticResource AndMultiValueVisibilityConverter}">
<Binding Path="RelevantSystemOption" />
<Binding Path="RelevantLicenseKeyOption"/>
</MultiBinding>
</TextBlock.Visibility>
AndMultiValueVisibilityConverter需要布爾值,僅使可見的東西,如果他們都如此,以供參考。
這會在設計時關閉控制器的能見度,這是我不想要的。
我知道Expression Blend and design-time attributes在運行時可以忽略某些佈局確定的能力。 d:IsHidden沒有被尊重,並且d:LayoutOverrides在可見性上不起作用,因爲它是一個動態屬性。
我寧願不使用d:DataContext填充整個支持模型。如果必須的話,我會如何,但是有沒有更簡單的方法來強制這種特定的控制方式,也許有一些其他的方法在設計時始終可見?
使用'DesignerProperties.GetIsInDesignMode(新的DependencyObject())'在多值轉換器。 – Will
是的,那樣的效果很好。你是否認爲這是一個評論? – Glazius
如果我能找到一個體面的規範問題,我會把它作爲一個副本來關閉(這非常好,很正常),但我不能。所以,嗯,回答。 – Will