[英]Can binding be used in XAML within a Style?
我編寫了一個示例,看是否可以在空白的Windows Store應用程序的Style
中使用綁定-編譯后,綁定不能按我希望的那樣工作。 我對XAML和綁定相對較新,因此可能錯過了一些東西。
在下面的示例中,有兩個矩形,這兩個矩形都綁定到滑塊控件,並且都應在移動滑塊的同時更改。但是,似乎只有第一個矩形發生了變化。 第一個直接綁定,第二個通過style
綁定。
是否應該在Win Store應用程序中以Style
綁定? (我的目標是要有一個滑塊一次更改大量元素的設置,這似乎比復制/粘貼所有元素的綁定更好。)
<Grid Background="#FF87873D">
<StackPanel>
<StackPanel.Resources>
<Style x:Key="myTestRectangleStyle" TargetType="Rectangle">
<Setter Property="Fill" Value="DarkBlue" />
<Setter Property="Margin" Value="10,10" />
<Setter Property="Height" Value="30" />
<Setter Property="Width" Value="{Binding ElementName=slider1, Path=Value}" />
</Style>
</StackPanel.Resources>
<Rectangle Width="{Binding ElementName=slider1, Path=Value}" Fill="Black" Margin="10,10" Height="30"/>
<Rectangle Style="{StaticResource myTestRectangleStyle}"/>
<Slider Name="slider1" Minimum="20" Maximum="200" Margin="20,0"/>
</StackPanel>
</Grid>
回答我自己的問題...看來這在Windows Store應用程序中是不可能的。
我在MSDN論壇上得到了用戶的澄清,
像WPF中一樣,Windows Store Apps中的
Style
設置器不支持[Bindings],即您無法在Style
綁定到Slider的Value屬性
因此,解決方法是直接在Style
外部設置綁定(如果不幸的是要綁定很多元素,這是一個漫長的選擇)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.