-4

ユーザーがテキストを変更しても、TextChanged イベントは発生しません。生成されたコードのエラーである可能性があると思います。

 private void textBox1_TextChanged(object sender, EventArgs e)
    {
      textBox2.Text = textBox1.Text;
    }
4

2 に答える 2

6

メソッドを追加するだけでなく、フォームを開いてテキスト ボックスを選択し、プロパティ ウィンドウで [イベント] タブを表示してから、イベントのハンドラーを設定する必要がありますTextChanged

于 2012-04-27T12:25:24.250 に答える
3

簡単に言うと、プロパティ/イベントペインを使用してそこでイベントを作成することにより、ビジュアルスタジオのGUIエディターを介して自動配線します。

上記のコードは、イベント ハンドラー関数です。イベントはいくつかの部分に分かれています

  1. イベント署名 - 呼び出し方法
  2. ハンドラー関数 - 署名に準拠
  3. イベントフック
  4. フックにハンドラー関数を追加
  5. イベントが発生しました。

イベント署名

public delegate void TextChangedEventHandler(object sender, EventArgs e);

ハンドラ関数 (あなたのコード)

private void textBox1_TextChanged(object sender, EventArgs e) { textBox2.Text = textBox1.Text; }

上記の署名に準拠する必要があります

イベント フック 「このイベントを発生させることができます」と書かれている場所

public event TextChangedEventHandler TextChanged

関数に追加されたハンドラー

TextChanged += new TextChangedEventHandler(textBox1_TextChanged);
于 2012-04-27T12:26:23.990 に答える