これは私の最初の質問ですが、おそらく非常に問題はありますが、それは私にかなりの時間を与えてくれました。私は簡単な例を使って説明しています。メソッドを呼び出すボタンイベントはpublic intには影響しません
コンソールアプリケーションでは、public int 'x'を0に設定し、 'test'メソッドを1に変更するメソッドがあります。 'test'がMainで呼び出されると、Xの値は1になります期待される)。
しかしpublic int x = 0;
public void test()
{
x = 1;
}
static void Main(string[] args)
{
Program program = new Program();
program.test();
Console.WriteLine(program.x);
Console.ReadLine();
}
(これは私が理解していないものです)、Windowsフォームアプリケーションで同じ「試験」メソッドを呼び出すためにbutton_Clickイベントを使用して、「X」0のままである:
public Form1()
{
InitializeComponent();
}
public int x = 0;
public void test()
{
x = 1;
}
private void button1_Click(object sender, EventArgs e)
{
Form1 form = new Form1();
form.test();
MessageBox.Show("" + x);
}
}
要約すると、ボタンがクリックされたときに 'テスト'が呼び出され、 'x'の値が1に変更されてしまうことがあります。
ありがとうございます!あなたがその行を削除しForm1 form = new Form1();
で作成したフォームのために何が起こっているので
ありがとうございました! – Sammmm