首页 文章

GET将变量更改为false

提问于
浏览
0

我正在尝试学习如何在AddIn中工作 . 我知道在AddIn中开发问题并不是一个好主意,但我想这样做 .

我做了一个用户控制窗口,它有2个参数(宽度和高度) . 单击按钮时,这些参数将更改用户控制窗口的大小 .

问题是,当我调用GET方法查看按钮是否被单击时,它总是返回false .

public int WindowWidth
    {
        get
        {
            return int.Parse(textBox_width.Text);
        }
        set
        {
            textBox_width.Text = value.ToString();
        }
    }

    public int WindowHeight
    {
        get
        {
            return int.Parse(textBox_height.Text);
        }
        set
        {
            textBox_height.Text = value.ToString();
        }
    }

    public bool ModifyIsClicked
    {
        get
        {
            return _ModifyIsClicked;
        }
        set
        {
            _ModifyIsClicked = value;
        }
    }

    private void button_modify_Click(object sender, EventArgs e)
    {
        MessageBox.Show("Width " + WindowWidth + " and Height " + WindowHeight);
        _ModifyIsClicked = true;
    }

    private bool _ModifyIsClicked;

这是验证按钮是否被单击并更改窗口大小的代码:

MainWindow mainWindow = new MainWindow();

if (mainWindow.ModifyIsClicked == true)
{
    toolWin.Width = mainWindow.WindowWidth;
    toolWin.Height = mainWindow.WindowHeight;
    mainWindow.ModifyIsClicked = false;
}

我忘了提到上面的代码在Connect类的“public void QueryStatus”中 .

使用调试我已经看到变量_ModifyIsClicked如何变为TRUE,第二个变为“return _ModifyIsClicked;”它变成了假 .

当变量变为True

当变量变为False

2 回答

  • 0
    MainWindow mainWindow = new MainWindow();
    
         private void button_modify_Click(object sender, EventArgs e)
         {
            MessageBox.Show("Width " + WindowWidth + " and Height " + WindowHeight);
            _ModifyIsClicked = true;     
            if (mainWindow.ModifyIsClicked == true)
            {
                toolWin.Width = mainWindow.WindowWidth;
                toolWin.Height = mainWindow.WindowHeight;
                mainWindow.ModifyIsClicked = false;
            }
        }
    
  • 0

    我跟别人说过话并解释了我的问题 .

    我使用文本框和按钮的主要对象是在方法"Exec"中创建的 . 它's my fault because I didn' t实现了 MainWindows() 对象的创建位置 . 我坚持认为它从未创造过 .

    每次我点击按钮时我都会看到我的变量如何更改其值,但每个对象的变量的默认值为"false" . 所以当我创建"the first object": MainWindow mainWindow = new MainWindow(); 时,实际上我正在创建一个不同于我的工具窗口的对象 .

    这就是我总是得到“假”的原因 .

相关问题