1
我發現了一個虛擬鍵盤的UserControl實現。有很多按鈕。我想讓UserControl公開一個DP「KeysStyleProperty」,但如何將其綁定到內部按鈕的樣式?如何將我自己的樣式依賴項屬性(DP)綁定到Button的樣式DP?
我發現了一個虛擬鍵盤的UserControl實現。有很多按鈕。我想讓UserControl公開一個DP「KeysStyleProperty」,但如何將其綁定到內部按鈕的樣式?如何將我自己的樣式依賴項屬性(DP)綁定到Button的樣式DP?
如果您將用戶控件的'LayoutRoot'DataContext設置爲它自己,則可以將您的內部按鈕樣式綁定到此依賴項屬性。有關詳細信息,請參閱本文,我寫道:
例如,是這樣的XAML:
<UserControl x:Class="UserControl.VirtualKeyboard"
...>
<StackPanel Orientation="Horizontal"
x:Name="LayoutRoot">
<Button Style="{Binding KeysStyleProperty}"/>
</StackPanel>
</UserControl>
,並綁定LayoutRoot如下:
public VirtualKeboard()
{
InitializeComponent();
//this.DataContext = this;
LayoutRoot.DataContext = this;
}
好的,謝謝你,我知道了。 UserControl中有很多按鈕。如何在xaml中定義將應用於按鈕的樣式,並將基於(或綁定到)DP? – EngineerSpock
此外,DataContext設置爲ViewModel,因此我無法將xaml中的樣式綁定到代碼隱藏中的DP。 – EngineerSpock
按鈕應該綁定到DP的樣式,已經綁定到VMs道具。 – EngineerSpock