DOBON.NET DOBON.NETプログラミング掲示板過去ログ

SelectAllの使い方について

環境/言語:[VB.NET 開発WINXP]
分類:[.NET]

お世話になります。

ある複数ある入力画面を作っているのですが、複数の項目で入力エラーが起きた時それぞれの文字を反転して表示したいと思います。

下記のように項目毎に羅列しているのですが、複数でエラーが起きても最後の判定部分しか反転しません。複数を同時に反転させる方法はないのでしょうか?

If (IsNumeric(ComboBoxSpec.Text) = True) Then
Me.ActiveControl = ComboBoxSpec
ComboBoxSpec.SelectAll()
End If
「書き込みのルールについて」に書かれているように、この掲示板では匿名での投稿は禁止されています。「初心者」というお名前も匿名とみなされます。今後はお名前を変更してご投稿いただけますように、お願いいたします。

書き込みのルールについて
http://dobon.net/vb/bbs/index.html
■No24329に返信(管理人さんの記事)
> 「書き込みのルールについて」に書かれているように、この掲示板では匿名での投稿は禁止されています。「初心者」というお名前も匿名とみなされます。今後はお名前を変更してご投稿いただけますように、お願いいたします。
>
> 書き込みのルールについて
> http://dobon.net/vb/bbs/index.html
>

申し訳ありません、次回からは初心者改めきゅうで投稿させて頂きます。
■No24322に返信(初心者さんの記事)
> 下記のように項目毎に羅列しているのですが、複数でエラーが起きても最後の判定部分しか反転しません。複数を同時に反転させる方法はないのでしょうか?
>
> If (IsNumeric(ComboBoxSpec.Text) = True) Then
> Me.ActiveControl = ComboBoxSpec
> ComboBoxSpec.SelectAll()
> End If
>

Control 的には全選択状態 (SelectionStart = 0, SelectionLength = 文字数) にはなっていますが、すべての Control を '同時に反転表示' はこの方法では無理ですね。
自前で描画してやるなりしないといけないです。

おそらく検証後にエラーとなった項目を視覚的にわかりやすくするためにこれをなさろうとしていると思いますが、これだったら BackColor を変更するなり、ErrorProvider を使って明示するなりした方が一般的ですね。
■No24334に返信(じゃんぬねっとさんの記事)
> ■No24322に返信(初心者さんの記事)
>>下記のように項目毎に羅列しているのですが、複数でエラーが起きても最後の判定部分しか反転しません。複数を同時に反転させる方法はないのでしょうか?
>>
>> If (IsNumeric(ComboBoxSpec.Text) = True) Then
>> Me.ActiveControl = ComboBoxSpec
>> ComboBoxSpec.SelectAll()
>> End If
>>
>
> Control 的には全選択状態 (SelectionStart = 0, SelectionLength = 文字数) にはなっていますが、すべての Control を '同時に反転表示' はこの方法では無理ですね。
> 自前で描画してやるなりしないといけないです。
>
> おそらく検証後にエラーとなった項目を視覚的にわかりやすくするためにこれをなさろうとしていると思いますが、これだったら BackColor を変更するなり、ErrorProvider を使って明示するなりした方が一般的ですね。

じゃんぬねっとさんアドバイスありがとうございます。
BackColorで試したところ思っていたことができました。

ありがとうございました。
2009/04/02(Thu) 17:51:53 編集(投稿者)
2009/04/02(Thu) 17:51:47 編集(投稿者)

■No24342に返信(きゅうさんの記事)
> ■No24334に返信(じゃんぬねっとさんの記事)
>>■No24322に返信(初心者さんの記事)
> >>下記のように項目毎に羅列しているのですが、複数でエラーが起きても最後の判定部分しか反転しません。複数を同時に反転させる方法はないのでしょうか?
> >>
> >> If (IsNumeric(ComboBoxSpec.Text) = True) Then
> >> Me.ActiveControl = ComboBoxSpec
> >> ComboBoxSpec.SelectAll()
> >> End If
> >>
>>
>>Control 的には全選択状態 (SelectionStart = 0, SelectionLength = 文字数) にはなっていますが、すべての Control を '同時に反転表示' はこの方法では無理ですね。
>>自前で描画してやるなりしないといけないです。
>>
>>おそらく検証後にエラーとなった項目を視覚的にわかりやすくするためにこれをなさろうとしていると思いますが、これだったら BackColor を変更するなり、ErrorProvider を使って明示するなりした方が一般的ですね。
>
> じゃんぬねっとさんアドバイスありがとうございます。
> BackColorで試したところ思っていたことができました。
>
> ありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板