我的系统有许多具有相同功能的控件事件和菜单事件,就是这几个控件和菜单控制相同的功能,我怎样才能让一个控件事件发生,而其它的控件和菜单自动被按下或被选中。如我的菜单中有“选点”的条目,而在浮动的工具条中也有个按钮也是“选点”的功能,我怎样才能点击菜单上的“选点”后,浮动工具条中的按钮也自动被按下。
不要在其中一个里面添加另一个事件的方法,那样不太好。因为我有好多类似的控件和菜单有同样的功能,有没有个好的方法,可以解决这个问题呢
13 个解决方案
#1
1。写个用户控件,包括控件和菜单,它们事件的相互的对应关系在用户控件里实现。
2。在包含这些控件的页里也可以实现,写个方法专门检查并设置控件之间的对应关系的,在每个控件的事件中调用这个方法。
2。在包含这些控件的页里也可以实现,写个方法专门检查并设置控件之间的对应关系的,在每个控件的事件中调用这个方法。
#2
up
#3
自己做个类吧
#4
应该没有什么便捷的办法
只能在事件里控制了
只能在事件里控制了
#5
gshope(北京.Net) 朋友能不能给点例子或代码呢
#6
封装成函数,然后在菜单事件和控件事件中调用相同的函数不就行了吗?
#7
调用这个方法的时候,设置菜单和控件
#8
那样我得写多少代码呀
#9
提议以 observer pattern为基础做下去,可以看下 GOF的《design patterns》
#10
可以利用控件的tag属性,例如:
// 功能实现代码写在菜单项里
Button button = new Button();
button.tag = this.mnuItem; // 菜单项
OnButtonClick()
{
MenuItem item = (MenuItem) button.tag;
item.PerformClick();
}
我也没测试,大概是利用tag属性和PerformClick方法来实现的,你试试看吧!
// 功能实现代码写在菜单项里
Button button = new Button();
button.tag = this.mnuItem; // 菜单项
OnButtonClick()
{
MenuItem item = (MenuItem) button.tag;
item.PerformClick();
}
我也没测试,大概是利用tag属性和PerformClick方法来实现的,你试试看吧!
#11
up
#12
up
#13
up
#1
1。写个用户控件,包括控件和菜单,它们事件的相互的对应关系在用户控件里实现。
2。在包含这些控件的页里也可以实现,写个方法专门检查并设置控件之间的对应关系的,在每个控件的事件中调用这个方法。
2。在包含这些控件的页里也可以实现,写个方法专门检查并设置控件之间的对应关系的,在每个控件的事件中调用这个方法。
#2
up
#3
自己做个类吧
#4
应该没有什么便捷的办法
只能在事件里控制了
只能在事件里控制了
#5
gshope(北京.Net) 朋友能不能给点例子或代码呢
#6
封装成函数,然后在菜单事件和控件事件中调用相同的函数不就行了吗?
#7
调用这个方法的时候,设置菜单和控件
#8
那样我得写多少代码呀
#9
提议以 observer pattern为基础做下去,可以看下 GOF的《design patterns》
#10
可以利用控件的tag属性,例如:
// 功能实现代码写在菜单项里
Button button = new Button();
button.tag = this.mnuItem; // 菜单项
OnButtonClick()
{
MenuItem item = (MenuItem) button.tag;
item.PerformClick();
}
我也没测试,大概是利用tag属性和PerformClick方法来实现的,你试试看吧!
// 功能实现代码写在菜单项里
Button button = new Button();
button.tag = this.mnuItem; // 菜单项
OnButtonClick()
{
MenuItem item = (MenuItem) button.tag;
item.PerformClick();
}
我也没测试,大概是利用tag属性和PerformClick方法来实现的,你试试看吧!
#11
up
#12
up
#13
up