• ベストアンサー

DataGrid 内のセル(あるいは行)にフォーカスを移したい(アクテ

DataGrid 内のセル(あるいは行)にフォーカスを移したい(アクティブにしたい)のですが、その方法がわかりません。 Microsoft Visual Basic 2008 Express Edition で WPF アプリケーションを作成しています。 DataGrid 内にフォーカスを移そうとしているのですが、.Focus() ですと、DataGrid そのものにフォーカスが移って(DataGrid コントロールのふちが破線で囲まれる)しまいます。 セル(あるいは行)にフォーカスを移す方法があれば教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • unicoun
  • ベストアンサー率50% (1/2)
回答No.1

少しでもヒントになればと存じます。 セル選択でしたら、 DataGridViewのCurrentCellプロパティではだめでしょうか? DataGridView1.CurrentCell = DataGridView1(1, 1) 的外れであればすいません。

dell_OK
質問者

お礼

ご回答いただきありがとうございます。 Windowsフォームアプリケーションでなら DataGridView で、 教えてくださった方法でできるみたいですね。 WPFアプリケーションには DataGridView がなくて DataGrid を使っています。 この DataGrid では同じ方法ではできませんでした。 CurrentCell プロパティはあるので、 教えてくださった方法をヒントに試してみたのですが、 設定方法が異なるようで、同じ記述はできませんでした。 DataGrid.CurrentCell のヘルプを見て、 そこに書かれている方法を試しても、エラーになるので、 何か違う DataGrid のヘルプなのかと思っている次第です。 別の方法を思いついたら、また教えてください。

dell_OK
質問者

補足

他に回答が得られそうにないので締め切ろうと思います。 指定したセルへの移動はいまだにできていませんが、 コントロール内へのフォーカスの移動はできるようになりました。 質問に書いた破線で囲まれるのは回避できたようで、 先頭のセルへ移動なのですが、 grid.MoveFocus(New TraversalRequest(FocusNavigationDirection.First)) とする事で .Focus とは異なった動作をしてくれるようです。

関連するQ&A