我是WPF的新手,我遇到了从用户控件继承的问题.
我创建了一个用户控件,现在我需要继承该控件并添加更多功能.
以前有人做过这种事吗?任何帮助将不胜感激.
谢谢
所以我正在构建一个具有大量窗口的应用程序,所有窗口都具有相同的基本布局:
目前,我必须在每个窗口中重新创建此结构.理想情况下,我希望将此布局编码在一个位置,也许可以放入自定义Window子类中以便于使用.有没有人有任何关于如何开始的线索,或以前遇到过类似问题的经历?
我有一个自定义ControlTemplate用于WPF TabControl,它在TabItem标题的左侧和右侧添加了按钮.目前这不是命名部分,因为按钮命令绑定在ControlTemplates XAML中,不需要在ControlTemplate之外公开.
这适用于按钮,但如果我想将内容添加到TabItemHeaders的左侧(或右侧),可以绑定到ControlTemplate之外,以便我的TabControl变得更灵活,该怎么办?
我的想法是继承TabControl并在ControlTemplate中有两个命名部分,并将它们作为新控件的属性公开; CustomTabControl.LeftContentArea和CustomTabControl.RightContentArea分别.每个命名的部分都是一个ContentPresenter,每个ContentPresenters Content属性都由上面提到的属性公开.
但是,当我尝试这个时,我无法将内容放入左右内容区域.
编辑:为了清楚我已经包含了一个图像.红色矩形显示我希望能够放置额外内容的位置.

更新:下面是我到目前为止取得的进展的屏幕截图,希望这将有助于解释我的问题.
屏幕截图显示了我的自定义选项卡控件,其中有两个空白选项卡和三个当前位于TabItem标题区域右侧的按钮.这些按钮当前在TabControls自定义ControlTemplate IE中定义,ControlTemplates Grid中有一个ColumnDefinition,它包含一个托管3个按钮的StackPanel.

我正在寻找的是一种允许选项卡控件的消费者决定选项卡旁边区域内容的内容的方法.EG用户应该能够做到这样的事情:
<local:CustomTabControl>
<local:CustomTabControl.RightContentArea>
<!-- This can be changed to ANY content that the user wants -->
<StackPanel Orientation="Horizontal">
<Button Content="Test" />
<Button Content="Test" />
<Button Content="Test" />
</StackPanel>
</local:CustomTabControl.RightContentArea>
<!-- TabItems are added as normal -->
<TabItem Header="Tab One" />
<TabItem Header="Tab Two" />
</local:CustomTabControl>
Run Code Online (Sandbox Code Playgroud)