-1

我一直陷入一个简单的问题。我无法删除它。

我已将面板更改为静态公共。跨页面访问面板。每当我更改 GUI 时,它都会将静态公共重置为公共。并给我一个错误。你不能在这里访问公共成员。

所以每次我改变一点GUI来运行程序时,我都必须设置静态。

你能帮帮我吗?

我知道这是一个垃圾问题。我很想知道反手发生了什么。

我正在使用 Visual Studio 2011。开发人员预览。

4

2 回答 2

1

我假设您正在使用 WinForms。

不要更改由 Microsoft Visual Studio 生成的自动生成的代码,它只会在您更改某些内容时被覆盖。而是static在后面的代码中使用 a 。

例如,单击时更改变量的按钮。

public static int MyGlobalVariable
private void button1_Clicked(object sender, EventArgs e)
{
    MyGlobalVariable = 4;
}

还要考虑一个完全不同的设计,因为使用公共静态数据迟早会给你带来很多麻烦。通常会更快。

于 2012-04-15T15:44:21.480 回答
0

不确定我是否正确理解了您的问题(“当我更改 GUI 时”是什么意思?)但也许这就是您要寻找的:

public partial class Form1 : Form
{
    public static Panel panelS = new Panel();

    public Form1()
    {
        InitializeComponent();
    }
}

和:

public partial class Form2 : Form
{
    public Form2()
    {
        InitializeComponent();
        Form1.panelS.Location = new Point(100, 100);
    }
}
于 2012-04-15T19:27:20.737 回答