2011-04-04 47 views
2

我正在查看ComboBox templateSilverlight - 控件模板中的動畫元素

我有我在代碼中創建的StoryBoard,我想用ComboBox爲它創建動畫。如果我只想執行屬性(如「背景」),那麼它可以正常工作,但是爲模板部件製作動畫的正確方法是什麼?例如,名稱爲HighlightRectangle

我試過將屬性路徑設置爲(ComboBox).(Highlight).(Rectangle.Fill).(SolidBrush.Color),但這給了我一個錯誤,說它無法解析給定對象。

編輯:它看起來像WPF對StoryBoard.Begin(),使這個容易一些重載,但我沒有看到這樣的事情的Silverlight 4

EDIT2:和澄清,我正在努力要做到這一點在默認的Silverlight控件模板,沒有一個我自己的定義(我想避免模板到我的代碼庫中複製)

回答

1

覆蓋的OnApplyTemplate方法,看看您是否可以編程附加故事板實際模板部分。您使用GetTemplateChild來檢索模板部件。

+0

謝謝傑夫,我很感謝你的回答,但我不確定這對我有何幫助。 在'OnApplyTemplate'中,你會如何建議我嘗試訪問模板部分? – Kir 2011-04-06 12:55:42

+0

您可以按名稱申請。如果您查看模板(或文檔),則每個部分都有一個名稱 - 您可以通過這些名稱檢索元素。看我的編輯。 – 2011-04-06 13:19:01

+0

是的,我只是在發表評論後才明白這一點。不幸的是,這意味着我必須繼承我的組合框,並且事實證明,我正在尋找的實際上是組合框中的「togglebutton」的一部分,它打開了一整串其他的蠕蟲,但我想這就是我的答案。謝謝傑夫! – Kir 2011-04-06 13:24:02