2012-05-10 42 views
0

有沒有辦法從WPF中的現有控件創建DataTemplate
例如,說我有我的資源網格方式如下:從WPF中的現有控件創建數據模板

<Grid x:Key="grid" .. /> 

我可以以某種方式使用此網格作爲DataTemplate另一個控制?

謝謝。

回答

2

一種解決方案是在資源字典中創建一個包含網格的DataTemplate。要顯示Grid,您可以使用ContentControl,並且可以使用DataTemplate來模板化其他控件。

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> 
    <DataTemplate x:Key="grid"> 
     <Grid /> 
    </DataTemplate> 
</ResourceDictionary> 
+0

嗨,謝謝 - 這正是我需要避免的情況,因爲我有許多資源,目前用作ContentControl的內容。我試圖通過尋找使用這些資源的方式來避免這種大規模資源進入數據模板的情況,因爲DataTemplates – Oren

+0

@Oren將數據模板放在資源中而不是實際的控件中。 – Slugart

+0

我目前在許多資源文件中定義了數百個控件,我希望在一個通用位置實現更改,而不是顯式重構所有需要幾周才能完成的資源(用作內容控件的內容)。我還希望強制實施,以防其他開發人員添加新資源時不會再次發生。 – Oren