| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 627 人关注过本帖
标题:菜鸟提问,关于FACADE模式的问题
只看楼主 加入收藏
thunder186
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-3-13
收藏
 问题点数:0 回复次数:3 
菜鸟提问,关于FACADE模式的问题
我的WINDOWSFORM 里有三个按钮,分别吊桶调用三个不同的类中的方法。我想把这个调用过程封装到FACADE类中,于是我写了以下的代码:

按钮一:
private void button1_Click(object sender, EventArgs e)
        {
            Facade facade = new Facade(sender);
        }
按钮二:
private void button2_Click(object sender, EventArgs e)
        {
            Facade facade = new Facade(sender);


按钮三:
private void button1_Click(object sender, EventArgs e)
        {
            Facade facade = new Facade(sender);
        }

FACADE类:
 class Facade
    {
        object senderSouse;
        public Facade(object sender)
        {
            senderSouse = sender;
        }
   }
      
我的问题是在FACADE类的构造函数中如何区分(识别)这三个不同的按钮事件。请高手指点。谢谢。

搜索更多相关主题的帖子: private button 
2011-11-29 04:43
wangnannan
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:87
帖 子:2546
专家分:9359
注 册:2007-11-3
收藏
得分:0 
LZ好像理解错FACADE模式的用意了吧 不传sender 传业务规则 例如按钮一是用于操作哪些业务的

出来混,谁不都要拼命的嘛。 。拼不赢?那就看谁倒霉了。 。有机会也要看谁下手快,快的就能赢,慢。 。狗屎你都抢不到。 。还说什么拼命?
2011-11-29 09:35
thunder186
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-3-13
收藏
得分:0 
能再详细点吗?我太“菜”了,最好能给个示例,谢谢啊。
2011-11-30 02:42
thunder186
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-3-13
收藏
得分:0 
回复 楼主 thunder186
我在其他论坛上获得了帮助,贴出来与大家分享。

既然传进来的都是Button,所以你可以在函数体内转化成Button类,然后判断Name即可(因为Name永远是唯一,不能重复的)——
 
class Facade
 {
 object senderSouse;
 public Facade(object sender)
 {
 senderSouse = sender;
 Button btn = senderSource as Button;
 if(btn!=null)
 {
      if(btn.Name=="xxxx")
      {
           ………………
      }
      else
      {
          …………………
      }
 }
 }
 }
2011-12-01 22:56
快速回复:菜鸟提问,关于FACADE模式的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028759 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved