50


8

タブのWinforms NumericUpDownですべてのテキストを選択する方法?

ユーザーが自分の `NumericUpDown`にタブ移動したら、すべてのテキストを選択します。 これは可能ですか?

6 Answer


112


private void NumericUpDown1_Enter(オブジェクトセンダ、EventArgs e){NumericUpDown1.Select(0、NumericUpDown1.Text.Length); }

(TextプロパティはIntellisenseでは非表示になっていますが、そこにあります)


8


Tab and Clickを検索している将来の人々のためにこれに追加したいと思いました。

Jon Bの回答はTabにはぴったりですが、クリックを含めるように修正する必要がありました

下にクリックするとテキストが選択されます。 クリックしてボックスに入ると、テキストが選択されます。 あなたが既にボックスに集中しているならば、クリックはそれが通常することをするでしょう。

bool selectByMouse = false;

private void quickBoxs_Enter(オブジェクト送信者、EventArgs e){NumericUpDown curBox =送信者としてNumericUpDown; curBox.Select(); curBox.Select(0、curBox.Text.Length); if(MouseButtons == MouseButtons.Left){selectByMouse = true; }}

private void quickBoxs_MouseDown(object sender、MouseEventArgs e){NumericUpDown curBox = NumericUpDownとしての送信者。 if(selectByMouse){curBox.Select(0、curBox.Text.Length); selectByMouse = false; }}

これを複数のnumericUpDownコントロールに使用できます。 EnterイベントとMouseDownイベントを設定するだけです。


4


私は同じ問題を抱えていましたが、この作品は私のために最初にアイテムを選択し、2番目のものはテキストを選択していました。

myNumericUpDown.Select(); myNumericUpDown.Select(0、myNumericUpDown.Value.ToString()。Length);


2


これを実現するための拡張メソッドを作成しました。

VB:

Public Sub SelectAll(myNumericUpDown As NumericUpDown)
    myNumericUpDown.Select(0, myNumericUpDown.Text.Length)
End Sub

C#:

public static void SelectAll(this NumericUpDown numericUpDown)
    numericUpDown.Select(0, myNumericUpDown.Text.Length)
End Sub


-1


やってみる

myNumericUpDown.Select(0、myNumericUpDown.Value.ToString()。Length);


-1


私は複数のnumericupdownボックスを持っていて、これをすべての人に達成したいと思いました。 わたしは作った:

private void num_Enter(オブジェクトセンダ、EventArgs e){NumericUpDownボックス= NumericUpDownとしてのセンダ。 box.Select(); box.Select(0、num_Shortage.Value.ToString()。Length); }

次に、この機能を各ボックスのEnterイベントに関連付けて(これは行っていません)、私の目標は達成されました。 私が初心者であるので理解するのにしばらく時間がかかりました。 これが他の誰かに役立つことを願っています