在WPF自定義控件中,我用於實現基於此自定義控件的另一個屬性的自定義控件的外觀更改,並藉助於觸發器機制,例如,當我的自定義控制改變其屬性AStatus
重視Available
其背景色更改爲Green
:當另一個屬性發生變化時更改Silverlight自定義控件的樣式
<Trigger Property="AStatus" Value="Available">
<Setter TargetName="PART1" Property="Background" Value="Green"/>
<Setter TargetName="PART_Backgr" Property="Background" Value="Green"/>
</Trigger>
但Silverlight的缺乏觸發器功能。爲了改變Silverlight中自定義控件的外觀,應該使用VisualStateManager。但是我無法在VisualStateManager的幫助下找到這種情況的實現方式。
當自定義控件的另一個屬性更改時,如何實現更改Silverlight自定義控件的樣式?
謝謝!你能否指定,關於選項#1,你是否指的是使用某個事件處理程序切換到XAML頁面的代碼隱藏文件中的新VisualState?如果是,那麼您更喜歡使用哪個事件處理程序?如果你的意思是在包含我的自定義控件的所有屬性的C#文件中進行切換(順便說一下,它們是依賴項屬性),那麼讓它成爲MyCustControl.cs,你能否提供這部分代碼的一些小例子? +1 – rem 2010-07-26 04:46:50
在XAML頁面後面的代碼中,在屬性AStatus中。我在我的博客上指出了一個例子。 – WiredPrairie 2010-07-26 12:50:43
謝謝!這對我來說是一個好的開始。 – rem 2010-07-26 17:45:46