您的位置:首页 > 其它

使用DevExpress.XtraTabbedMdi.XtraTabbedMdiManager控件来加载MDI窗体

2014-03-05 07:38 711 查看

使用DevExpress.XtraTabbedMdi.XtraTabbedMdiManager控件来加载MDI窗体

[csharp] view plaincopyprint?

<SPAN style="WHITE-SPACE: pre"> </SPAN>/// <summary>

/// 加载窗体

/// </summary>

/// <param name="ChildTypeString">窗体类型名称</param>

/// <param name="args">参数</param>

public void OpenMDIWindow(string ChildTypeString,object[] args)

{

if (string.IsNullOrEmpty(ChildTypeString))

return;

var fullName = String.Format("{0}.{1}", GetType().Namespace, ChildTypeString);

if (ContainMDIChild(fullName))

return;

// Create data type using type string

Type typForm = Assembly.GetExecutingAssembly().GetType(fullName);

if (typForm == null)

return;

// Create object using type's "InvokeMember" method

Object obj = typForm.InvokeMember(

null,

BindingFlags.DeclaredOnly |

BindingFlags.Public | BindingFlags.NonPublic |

BindingFlags.Instance | BindingFlags.CreateInstance,

null,

null,

args);

// Show child form

if (obj == null)

return;

Form myChild = obj as Form;

myChild.MdiParent = this;

myChild.WindowState = FormWindowState.Maximized;

myChild.Show();

}

[csharp] view plaincopyprint?

/// <summary>

/// 判断MDI中是否已存在当前窗体

/// </summary>

/// <param name="ChildTypeString">窗体类型名称</param>

/// <returns></returns>

private bool ContainMDIChild(string ChildTypeString)

{

foreach (Form f in MdiChildren)

{

if (f.GetType().ToString() == ChildTypeString)

{

f.Select();

return true;

}

}

return false;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐