#region
|
|
using System;
|
using System.Text;
|
using System.Windows.Forms;
|
using CSFrameworkV5.Common;
|
using CSFrameworkV5.Core;
|
using DevExpress.XtraTab;
|
|
#endregion
|
|
///*************************************************************************/
|
///*
|
///* 文件名 :ModuleLoadDevComponent.cs
|
///* 程序说明 : 加载引用Dev控件的模块
|
///* 原创作者 :www.csframework.com
|
///*
|
///* Copyright 2006-2021 C/S框架网 www.csframework.com
|
///*
|
///**************************************************************************/
|
|
namespace CSFrameworkV5.Library.CommonClass
|
{
|
/// <summary>
|
/// 加载引用Dev控件的模块
|
/// </summary>
|
public class ModuleLoadDevComponent : ModuleLoaderBase
|
{
|
/// <summary>
|
/// 获取模块主窗体顶级菜单名称
|
/// </summary>
|
/// <returns></returns>
|
private string GetModuleTopMenuNames()
|
{
|
var ms = _ModuleMainForm.GetModuleMenu();
|
var sb = new StringBuilder();
|
foreach (ToolStripItem item in ms.Items) sb.Append("," + item.Name);
|
|
return sb.ToStringEx();
|
}
|
|
/// <summary>
|
/// 每个模块对应一个TabPage, 將模块主窗体的Panel容器集成在主窗体的TabPage页内。
|
/// 所有加载的模块主窗体的Panel容器都嵌套在主窗体的TabControl内。
|
/// </summary>
|
public override void LoadGUI(object mainTabControl)
|
{
|
if (mainTabControl == null) return;
|
|
if (mainTabControl is XtraTabControl == false) return;
|
|
//主窗体的TabControl组件
|
var xtraTabControl = mainTabControl as XtraTabControl;
|
|
try
|
{
|
//获取模块主窗体的Panel容器
|
var container = _ModuleMainForm.GetContainer();
|
|
if (null != container)
|
{
|
container.Dock = DockStyle.Fill;
|
var page = new XtraTabPage();
|
page.Tag = _ModuleMainForm; //模块窗体
|
page.AccessibleDescription =
|
GetModuleTopMenuNames(); //用于激活当前窗体
|
page.Text =
|
_ModuleMainForm
|
.ModuleName; //取模块名称// this.GetCurrentModuleName();
|
page.Controls.Add(container); //嵌套在主窗体的TabControl内
|
xtraTabControl.TabPages.Add(page);
|
}
|
}
|
catch (Exception ex)
|
{
|
Msg.ShowException(ex);
|
}
|
}
|
}
|
}
|