開発言語:VS2008・C#
VS2008・C#で郵便番号や電話番号を入力できるユーザコントロールを作成しています。
入力フィールドはTEXTBOX、区切り文字はLABELで、
郵便番号なら3桁 + 区切り文字(-) + 4桁
電話番号なら3桁 + 区切り文字(-) + 4桁 + 区切り文字(-) + 4桁
といった感じで、プロパティで設定された値により、動的に入力フィールドのTEXTBOXを作成しています。
上記のユーザコントロールをフォームに配置し、ENTERキーでフォーカスを移動させたいのですが、現時点で、ユーザコントロール内のTEXTBOXでENTERを押した場合フォーカスはユーザコントロール内の次のTEXTBOXに移動するのですが、最後のTEXTBOXでENTERキーを押した場合ユーザコントロールからフォーカスが移動しなくなってしまいます。
例)住所フィールド(TEXTBOX)→ENTER押下→郵便番号(ユーザコントロール)の上3桁フィールド→ENTER押下→郵便番号(ユーザコントロール)の下4桁フィールド→ENTER押下(フォーカスが次のコントロールに移動しない)
ユーザコントロール内のENTERキー移動はKeyDownイベントに関連付け行っていますが、これだとユーザコントロール内しかENTERでフォーカスが移動せずフォーム上の次のコントロールにフォーカスが移動しません。
どなたか、ENTERキーでユーザコントロールからフォーカスが移動できる方法を教えてください。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
KeyEventargsのSuppressKeyPressをtrueに設定してみてください
当方のWinXP Pro SP3では 警告音が鳴らないみたいですが ・・・
No.1
- 回答日時:
下4桁のKeyDownイベントを
if ( e.KeyValue == 13 )
{
e.Handled = true;
this.Parent.GetNetxtControl( this, true );
}
といった具合に 親の中で次のコントロールといった具合に呼び出してやればいいように思います
ご回答ありがとうございます。
上記方法を参考に下4桁のKeyDownイベントに処理を加えたところ解決しました。
追加で質問なのですが、ENTERでタブ移動した際、警告音が鳴ってしまいます。各KeyDownイベント後にe.Handled = true;にしているのですが。それでも警告音が消えません。対応法など知っていましたら御教授願います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 表内で、Enterキーで横→行の最後入力したら次の行の先頭に移動するマクロを作りたい 3 2022/05/01 21:19
- Excel(エクセル) エクセルについて質問です。 8 2022/05/31 16:00
- Excel(エクセル) エクセルのバージョン2016フリーズ改善策 5 2022/12/13 09:13
- Excel(エクセル) Excel ヘルプの[ロック解除]、<c0>、</c0> の意味は何ですか? 1 2023/02/20 16:58
- マウス・キーボード テンキーの設定がおかしくなっています。 5 2023/08/09 15:35
- Windows Me・NT・2000 widows xpのエラーで利用ができなくなりました 3 2022/12/21 13:43
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Skype windows11 スリープからの復帰時にサイン画面を表示したいのですが 1 2022/06/10 10:50
- Windows 10 エクスプローラで希望の場所が表示できない 2 2023/06/29 15:19
- デスクトップパソコン 光学ドライブのトレーを閉めると画面が真っ黒になりグラボのファン?ブン回り?? 2 2023/05/19 08:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームで動的(Me.Con...
-
エクセル・VBA CheckBoxのオブ...
-
ExcelVBAでListViewが使用できない
-
WinAPIで電卓をクリック
-
C#で角が丸いテキストボックス
-
カメラスクロールするのを動画...
-
asp.netでToolTipコントロール...
-
もしフォームヘッダーにコント...
-
エクセル コントロールツール...
-
chr関数の呼び出しで「プロ...
-
悩みがあろうと、それなりに幸...
-
fpSpreadコントロール ライセ...
-
コンボボックスの文字によるif...
-
USB I/Oのデジタル信号をvbaで...
-
ListViewのチェックボックスに...
-
DataGridView、1セルに複数コ...
-
エクセルVBAでオプションボタン...
-
Labelコントロールの(左右)余...
-
OCXって何ですか?
-
With~EndWithの省略部分と引数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カメラスクロールするのを動画...
-
エクセル・VBA CheckBoxのオブ...
-
vb.netで画面のコントロールId...
-
エクセルVBAでオプションボタン...
-
EXCELでactivexコントロールを...
-
ExcelVBAでListViewが使用できない
-
excelのリストボックスで選択し...
-
ユーザーフォームで動的(Me.Con...
-
フォーム上の現在アクティブな...
-
C#で自分のウインド・ハンド...
-
変数をコントロール型で使用す...
-
VBAのフォームでTextBoxがいっ...
-
コントロールを移動できない
-
Groupboxの配下のコントロール...
-
C#で角が丸いテキストボックス
-
(VBA)スピンボタンの大量...
-
間違えて配置してしまったコン...
-
エクセル コントロールツール...
-
'ckbl' コントロールは作成され...
-
OCXって何ですか?
おすすめ情報