永发信息网

c# 问题 高手 初学者都来帮帮

答案:4  悬赏:30  手机版
解决时间 2021-07-25 10:55
  • 提问者网友:凉末
  • 2021-07-24 14:21

private void Button1_Click(object sender, System.EventArgs e)
{
if(b.a==1) //第一次运行满足条件
{
b.c=2; //设置b.c;问题就在这 这句话不执行
Label1.Text = b.a.ToString();
}
if(b.a==2)
{
b.SetA(1);
Label1.Text = b.a.ToString();
}
}
class Mode
{
public Mode()
{
a=2;
}
public int a;
public void SetA(int )
{
this.a=a;
}
}
Mode b =new Mode();

最佳答案
  • 五星知识达人网友:woshuo
  • 2021-07-24 15:49
侠道飞车
全部回答
  • 1楼网友:duile
  • 2021-07-24 19:41

你实例化MODE后 a是等于2的

当你点了按钮后又实例化一次MODE a又等于2

  • 2楼网友:零点过十分
  • 2021-07-24 18:11
试试这个 using System; using System.Windows.Forms; using System.Drawing; class Mode { public int num; public Mode() { num = 1; } public int a { get { return num; } set { num = value; } } } class test { static Mode m; static Label l; public static void Main() { l = new Label(); Button b = new Button(); Form f = new Form(); f.Controls.Add(l); f.Controls.Add(b); l.Text = "哈哈哈"; b.Text = "CLICK"; b.Location = new Point(0, l.Height); b.Click += new EventHandler(click1); m = new Mode(); Application.Run(f); } static public void click1(Object sender, EventArgs e) { if (m.a == 1) { m.a = 2; } else if(m.a == 2) { m.a = 1; } l.Text = m.a.ToString(); } }
  • 3楼网友:七十二街
  • 2021-07-24 17:23
请问大哥你的C定义在哪的?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯