从另一个用户控件添加 TabItem
本文关键字:添加 TabItem 控件 用户 另一个 | 更新日期: 2023-09-27 18:36:41
我被困在一个非常基本的事情上。
外壳窗口上有两个用户控件。第一个基本上有一个功能区控件。第二个控件基本上有一个选项卡控件。
单击功能区上的按钮时,如何添加新选项卡项?包括命令行管理程序在内的所有视图共享相同的命名空间。
在功能区中.xaml
<UserControl x:Name="RibbonControl" ... >
In WorkSpace.xaml
<UserControl x:Name="WorkSpaceControl" ... >
在 Shell.xaml 中
<RibbonWindow x:Name="ShellWindow" ... >
...
<Views:RibbonRegion x:Name="RibbonControl" />
<Views:WorkspaceRegion x:Name="WorkSpaceControl" />
...
</RibbonWindow>
在功能区中.cs
namespace Application.Views
{
public partial class RibbonControl: UserControl
{
private void Button_Click(object sender, RoutedEventArgs e)
{
//This throws the error that name is not available in current context.
WorkSpaceControl.AddDataTab("Hede");
//This doesn't throw error. But I think because the tab control
//has already initialized, it doesn't add the tab neither.
TabRegion su = new TabRegion();
su.AddDataTab("Hede");
}
}
}
睡个好觉后,答案如下:
Shell MainFrm = (Shell)App.Current.MainWindow;
MainFrm.WorkSpaceControl.AddDataTab("Something");