考慮:WPF的條件裝載控制
<StackPanel>
<View:ArcController x:Name="control1" Visibility="{Binding Path=CanShowDateControl, Converter={StaticResource bool2VisibilityConverter}}" />
<my1:DateLabelView x:Name="control2" DataContext="{Binding Path=DateLabelViewModel}" Visibility="{Binding ElementName=ctrlTableToolbar, Path=DataContext.IsDateReadOnly, Converter={StaticResource bool2VisibilityConverter}}" />
</StackPanel>
我有一個StackPanel內的兩個控制(控制1和控制2),並在同一時間,我想只顯示控件之一。 如代碼所示,控件的可見性由「IsDateReadOnly」和「CanShowDateControl」驅動。 而且,根據我的viewmodel邏輯... CanShowDateControl =!IsReadOnly。
所以,有一次我只會顯示兩個控件之一。
問題:我的問題是,雖然我一次只顯示一個控件,但我的xaml正在創建兩個控件的實例。是否有可能創建我只顯示的控件的實例?
把那:
1)我想用結合顯示/隱藏,這樣的邏輯就在於我的視圖模型。 2)我可以將這兩個控件放在一個包裝控件中。因爲我在不同的地方使用它。
感謝您的關注。
正在創建一個兩個控件的實例,這是一個很大的問題? – ChrisF 2011-01-12 12:29:13