1
後自動出現了C#代碼文件 - MyCustomControl.cs:在WPF中應該將XAML用於自定義控件的佈局?創建自定義的控制有
public class MyCustomControl : ContentControl {
static MyCustomControl() {
...
DefaultStyleKeyProperty.OverrideMetadata(typeof(MyCustomControl),
new FrameworkPropertyMetadata(typeof(MyCustomControl)));
}
...
}
和文件默認梃 - 主題\ Generic.xaml:
<!-- themes/generic.xaml -->
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:CustomControlLib">
<Style TargetType="{x:Type local:MyCustomControl}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:MyCustomControl}">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<ContentPresenter />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
但是,在如何應我正確地放置自定義控件本身的佈局和內容的XAML代碼?
是的,我嘗試這樣做,但在這種情況下,我得到一個錯誤:「屬性'視覺樹'被設置多次」(如果我把元素放在「邊框」元素旁邊)或「 property'Child'不止一次設置「(如果我在」Border「元素中放置了兩個以上的元素)。我做錯了什麼? – rem 2009-12-05 20:30:58
看來我意識到:我只是應該添加一個包裝元素,像StackPanel之類的東西。 謝謝! – rem 2009-12-05 20:38:11