可能第一次用DevExpress的原因,也不知道那个相关控件叫什么,百度找个半天没找到,实在苦恼,最后自己慢慢看封装的代码才知道,经验很重要,说多都累上代码吧:
首先设置xtraTabbedMdiManager1所有的类似Tab标签中的显示关闭按钮
this.xtraTabbedMdiManager1.ClosePageButtonShowMode=DevExpress.XtraTab.ClosePageButtonShowMode.InAllTabPagesAndTabControlHeader; //设置标签后面添加删除按钮 , 多个标签只需要设置一次.
然后控制第一个没有关闭按钮,实现首页/工作面板不可以关闭,没有关闭按钮
//我这里第一个设置没有关闭:
xtraTabbedMdiManager1.Pages[0].ShowCloseButton = DefaultBoolean.False;
//设置一下双击关闭xtraTabbedMdiManager1里的page
private DateTime m_LastClick = System.DateTime.Now;//当前时间
//双击关闭菜单栏
private void xtraTabbedMdiManager1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
DateTime dt = DateTime.Now;
TimeSpan span = dt.Subtract(m_LastClick);
if (span.TotalMilliseconds < 300) //如果两次点击的时间间隔小于300毫秒,则认为是双击
{
if (this.MdiChildren.Length > 1)
{
//if (this.ActiveMdiChild != m_MapForm)
//{
this.ActiveMdiChild.Close();
//this.xtraTabbedMdiManager1.ClosePageButtonShowMode = DevExpress.XtraTab.ClosePageButtonShowMode.Default;//隐藏关闭按钮
//}
}
m_LastClick = dt.AddMinutes(-1);
}
else
m_LastClick = dt;
}
}