0
我已經創建了一個用於我的Silverlight應用程序的自定義控件。它的模板在控制庫的Generic.xaml中定義。有沒有辦法從控件的.cs文件中設置該模板中項目的屬性?在Silverlight控件背後的代碼中訪問模板項目
我已經創建了一個用於我的Silverlight應用程序的自定義控件。它的模板在控制庫的Generic.xaml中定義。有沒有辦法從控件的.cs文件中設置該模板中項目的屬性?在Silverlight控件背後的代碼中訪問模板項目
如果你打電話GetTemplateChild(string childName)
與你的元素的名稱,如XAML定義,例如:
<Border x:Name="MyBorder" Background="Blue" ... />
,那麼你可以改變項目的屬性。你顯然必須轉換返回DependencyObject
爲正確的類型,並檢查它不爲空 - 以防萬一:
Border myBorder = GetTemplateChild("MyBorder") as Border;
if (myBorder != null)
{
myBorder.Backround = new SolidColorBrush(...);
}
你需要調用這個OnApplyTemplate
被稱爲後。
啊,這就解釋了爲什麼沒有代碼完成它。謝謝。 – Dov