none
SplitContainer内に配置したコントロールをEnterキーで移動させたい RRS feed

  • 質問

  • よろしくお願いします。
    VB2005とSQLServer2005でWinアプリを開発しています。
    Form1にSplitContainerを配置し、その中にTextboxやComboboxを配置しています。
    表題のとおり、SplitContainer上のTextboxに入力し、Enterキーを押したら
    Comboboxにフォーカスを移動させたいのですがうまくいきません。
    Form1に直接、TextboxやComboboxを配置すると下記のコードでうまく動作するのですが
    SplitContainer上に配置するとTabキーでしか移動ができません。
    何かプロパティの設定などが必要なのでしょうか?教えてください。

    Form1のkeypreviewプロパティ=true

    Form1のkeydownイベント
     If e.KeyCode = Keys.Enter Then
                Dim forward As Boolean = e.Modifiers <> Keys.Shift
                'Me.ProcessTabKey(forward);
                Me.SelectNextControl(Me.ActiveControl, forward, True, True, True)
                e.Handled = True
            End If

    上記のコードを SplitContainerのkeydownイベントに書いてみてもだめでした。
    何か見落としがあるのかもしれませんがお判りの方おられましたらよろしくお願いします。




    ---
    2009年2月27日 8:08

回答

  • 今はForm(Me)に対してActiveControlの取得、SelectControlの実行をしていますよね?
    SplitContainerに対して実行しないといけないということではありませんか?


    解決した場合は、参考になった返信に「回答としてマーク」のボタンを利用して、回答に設定しましょう(複数に設定できます)。
    • 回答としてマーク bykyo 2009年3月2日 2:20
    2009年2月28日 8:08
    モデレータ

すべての返信

  • 今はForm(Me)に対してActiveControlの取得、SelectControlの実行をしていますよね?
    SplitContainerに対して実行しないといけないということではありませんか?


    解決した場合は、参考になった返信に「回答としてマーク」のボタンを利用して、回答に設定しましょう(複数に設定できます)。
    • 回答としてマーク bykyo 2009年3月2日 2:20
    2009年2月28日 8:08
    モデレータ
  •  お礼が遅くなり、申し訳ございませんでした。
    ご指摘のとおり、
    SplitContainerに対して実行したところ、うまく動作させることができました。
    ありがとうございました。
    ---
    2009年3月2日 2:20