0
我需要一個額外的依賴屬性到控件,所以我重寫它。我:如何將繼承的控件添加到WPF中的數據模板?
namespace Custom_TextBlock_Sample
{
public class CustomLabel: Label
{
}
}
但我似乎無法將其添加到DataTemplate。下面的代碼將無法編譯:
... xmlns:Custom_TextBlock_Sample="clr-namespace:Custom_TextBlock_Sample" ...
<DataTemplate x:Key="Test">
<Grid>
<Custom_TextBlock_Sample:CustomLabel></Custom_TextBlock_Sample:CustomLabel>
</Grid>
</DataTemplate>
但是插入我被覆蓋的控制其他地方(比方說不是在DataTemplate中)..和編譯工作沒有問題。
以下工作:(我的控件不嵌套在日期模板中)。
<Grid>
<Custom_TextBlock_Sample:CustomLabel></Custom_TextBlock_Sample:CustomLabel>
</Grid>
而且使用常規標籤在DataTemplate中也適用:
<DataTemplate x:Key="Test">
<Grid>
<Label/>
</Grid>
</DataTemplate>
什麼問題可能是任何想法?我能否簡單地在這樣的莊園中不添加對數據模板的重寫控件?這是Visual Studio 2007中的錯誤嗎?
請注意,因爲我的意圖改爲控制將很小,我只想覆蓋「標籤」,而不是將其包裝在UserControl中。
謝謝
這對我來說很好,沒有什麼看起來與你放在這裏的代碼錯誤。你得到的編譯錯誤是什麼?如果您從錯誤的Label類繼承,可能會出現一個問題。檢查CustomLabel文件中的使用語句(例如,System.Reflection.Emit中的標籤是密封的,因此不會編譯)。 – 2010-02-06 19:10:47