0

読み込み、ボタンを押して (テキスト ボックスにテキストを追加するため)、カーソルをテキスト ボックスのテキストの末尾に移動し、アクティブ コントロールをテキスト ボックスに設定するフォームがあるので、ユーザーはすぐに入力を開始できます。テキストボックスには問題なく入力されていますが、フォームはフォーカスを失います。これはそこに選択行があるだけで、それを取り出すとうまくいきます。ユーザーは、フォームをクリックしてアクティブにする必要があります。何か案は?

private void createNewFolder_Load(object sender, EventArgs e)
{
     addDate.PerformClick();
     folderNameTextBox.Select(folderNameTextBox.Text.Length, 0);
     this.ActiveControl = folderNameTextBox;
     this.Focus();
}
4

2 に答える 2

1

フォーカスは Load イベントでは機能しません。フォームはまだ表示されていません。最も簡単な方法は、コントロールに最も低い TabIndex を与えることです。または Select() メソッドを使用します。

private void createNewFolder_Load(object sender, EventArgs e)
{
    addDate.PerformClick();
    folderNameTextBox.Select(folderNameTextBox.Text.Length, 0);
    folderNameTextBox.Select();
}
于 2012-08-10T17:10:22.673 に答える
0

それ以外の:

this.ActiveControl = folderNameTextBox;

試す:

folderNameTextBox.Focus();

テキストボックスがまだフォーカスされていない場合は、次を使用して選択してみてください。

folderNameTextBox.Select();
于 2012-08-10T17:05:05.190 に答える