NavBarControl--NavBarGroup--NavBarItem
NavBarControl控件虽然很好用,但是有一点很讨厌,就是NavBarGroup没有公开出点击事件或者折叠事件,对我们的开发造成很多的不便...但是也不是没有办法解决!
我们都知道NavBarGroup的折叠是由Expanded属性控制的,那么这就好办啦.
转到NavBarGroup的定义Expanded属性:
public virtual bool Expanded { get; set; } //正好是一个virtual属性,那么我们就可以重写这个属性达到我们的目的
代码:
public class MyNavBarGroup : NavBarGroup
{
public MyNavBarGroup()
: base()
{
}
public MyNavBarGroup(string caption)
: base(caption)
{
}
//重写展开折叠属性,在set中触发自己定义的事件
private bool _Expanded = false;
/// <summary>
/// 展开折叠属性
/// </summary>
public override bool Expanded
{
get
{
return _Expanded;
}
set
{
//触发改变之前的事件
CancelEventArgs args = new CancelEventArgs() { Cancel = false };
OnExpandChanging(args);