隐藏和显示左边树效果
2015-03-08 13:06:02 访问(2447) 赞(0) 踩(0)
相关下载:SlowXMainClient源码示例v2
说明:
1、winform控件上左到右分别添加panel_Left(Panel),splitter1(Splitter)和panel_Main(Panel)控件。Dock属性分别是Left、None、Fill。
2、给splitter1添加右键菜单事件。
如图:
核心代码:
#region 隐藏和显示左边树效果
/// <summary>
///
/// </summary>
int saveLeftWidth = -1;
/// <summary>
/// 隐藏左边树
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void 隐藏左边树ToolStripMenuItem_Click(object sender, EventArgs e)
{
HideLeftTree();
}
/// <summary>
/// 显示左边树
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void 显示左边树ToolStripMenuItem_Click(object sender, EventArgs e)
{
ShowLeftTree();
}
/// <summary>
/// splitter移动
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void splitter1_SplitterMoved(object sender, SplitterEventArgs e)
{
SplitterRefresh();
}
/// <summary>
/// 隐藏左边树
/// </summary>
protected void HideLeftTree()
{
if (this.panel_Left.Size.Width > 0)
{
this.panel_Left.Size
=
new Size
(
0,
this.panel_Left.Size.Height
);
SplitterRefresh();
}
}
/// <summary>
/// 显示左边树
/// </summary>
protected void ShowLeftTree()
{
if (this.panel_Left.Size.Width == 0)
{
this.panel_Left.Size
=
new Size
(
saveLeftWidth,
this.panel_Left.Size.Height
);
SplitterRefresh();
}
}
/// <summary>
/// Splitter移动后刷新
/// </summary>
protected void SplitterRefresh()
{
panel_Left.Refresh();
panel_Main.Refresh();
if (this.panel_Left.Size.Width > 0)
{
saveLeftWidth = this.panel_Left.Size.Width;
隐藏左边树ToolStripMenuItem.Enabled = true;
显示左边树ToolStripMenuItem.Enabled = false;
}
else
{
隐藏左边树ToolStripMenuItem.Enabled = false;
显示左边树ToolStripMenuItem.Enabled = true;
}
}
#endregion 隐藏和显示左边树效果
上一条:
下一条:
相关评论
发表评论