いくつかのパネル内にいくつかの TextBoxes があります。これらのテキスト ボックスには、Enter イベント関数を設定しました。
private void TextBox_Enter(object sender, EventArgs e)
{
TextBox tBox = sender as TextBox;
tBox.HideSelection = false;
tBox.SelectAll();
tBox.HideSelection = true;
}
これは、ユーザーがテキストボックスにタブで移動するかクリックして入力を開始できるようにするためです。今、私はこれを他の形式で成功させました。私の問題は、なんらかの理由で、Enter イベントを使用してそれらをパネルにねじ込むことです。
コードにブレーク ポイントを挿入すると、イベントが 20 秒または 30 秒のどこかで複数回トリガーされることがわかりました。彼らのための Leave イベントもありますが、それはトリガーされず、Enter イベントのみがトリガーされます。これは、それらがパネル内にある場合にのみ発生します。
TextBoxes は TabStops に設定され、異なる TabIndex を持ちます。
今、私はそれを引き起こしているものは知っていますが、その理由はわかりません。を削除するtBox.HideSelection
と、Enter イベントを複数回トリガーせずに TextBox に入ることができます。繰り返しますが、コードはパネルの外で意図したとおりに機能するため、パネルでコードが台無しになる理由はわかりません。
どんな助けでも大歓迎です。ありがとう。