标题:新手请教个问题。
只看楼主
yangdehui
Rank: 1
来 自:湘、江永
等 级:新手上路
帖 子:17
专家分:7
注 册:2011-4-14
结帖率:100%
已结贴  问题点数:20 回复次数:5 
新手请教个问题。
有八个Button控件,而我每个控件都是实现同样的代码,假设我八个控件的代码都为
程序代码:
 private void button1_Click(object sender, EventArgs e)
        {
            if (button1.Text == "")
            {
                button1.Text = "";
            }
            else
                button1.Text = "";
        }
这只是第一个按钮的代码,每个控件的触发事件都是一样,我要如何写个方法。再调用呢?

[ 本帖最后由 yangdehui 于 2011-5-1 09:24 编辑 ]
2011-05-01 09:22
mayuebo
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:257
专家分:1282
注 册:2005-9-8
得分:20 
有两个方法:

一个方法是把这段代码定义成一个方法。就是单独定义成一个函数的意思。在代码里面直接调用这个函数。text属性可以直接由sender传递。

第二个方法:
直接把其它的7个按钮new成button1,这样就可以共享事件

[ 本帖最后由 mayuebo 于 2011-5-1 09:30 编辑 ]

成功贵在坚持
2011-05-01 09:28
yangdehui
Rank: 1
来 自:湘、江永
等 级:新手上路
帖 子:17
专家分:7
注 册:2011-4-14
得分:0 
回复 2楼 mayuebo
用方法调用不是应该有返回值嘛,能否帮我写个简单的代码实现下
2011-05-01 10:23
mayuebo
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:257
专家分:1282
注 册:2005-9-8
得分:0 
把方法定义成void就没有返回值了

成功贵在坚持
2011-05-04 12:32
girl0001
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:56
专家分:118
注 册:2010-7-17
得分:0 
方法返回值不接受是没问题的。看楼主的需求不需要,可以把方法定义为
private void ButtonClick(object sender)
{
    Button but=(Button)sender;
    if (but.Text == "开")
    {
          but.Text = "关";
    }
    else
    {   
         but.Text = "开";
    }
}
2011-05-06 12:16
xyfaspx
Rank: 1
来 自:福建
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-5-11
得分:0 
private void change(object sender, EventArgs e)
        {
            Button btn = (Button)sender;
            if (btn.Text=="开")
            {
                btn.Text = "关";
            }
            else
            {
                btn.Text = "开";
            }
        }
private void button1_Click(object sender, EventArgs e)
        {
            change(sender,e);
        }
private void button2_Click(object sender, EventArgs e)
        {
            change(sender,e);
        }
private void button3_Click(object sender, EventArgs e)
        {
            change(sender,e);
        }
......

小小人物
2011-05-11 17:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-338499-1-1.html




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

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