teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

具体的な解決

2015/05/06 23:13

投稿

gorota
gorota

スコア25

answer CHANGED
@@ -1,1 +1,16 @@
1
- 自分でもう少し考えてみます
1
+ 自分でもう少し考えてみます
2
+
3
+ その後、原因が判明いたしました
4
+ カストマイス゛したコントロール内で
5
+ OnKeyDownをOverrides補足して、
6
+ Enterキーでは、FindForm.SelectNextControlを記入していました
7
+ そこで、Validating→エラー処理(メッセージ)→e.Cancel=True にて
8
+ フォーカス移動が元の戻るのですが、
9
+ OnKeyDown内の最後にMyBase.OnKeyDown(e)している為に
10
+ 再度、Enterキーを打鍵したようなイベントになり、
11
+ 再び、フォーム側でValidating→エラー処理となり、
12
+ 2度メッセージ表示となった訳です
13
+ 対応:
14
+ OnKeyDown内で、Enterキー処理後には
15
+ e.Handled = Trueとして、
16
+ MyBase.OnKeyDown(e)は実行しないとしました