質問: 現在VB.Netを利用して画面作成を行っています。 画面の都合上、Datagridviewの明細数が多くなった場合に画面が、画面(ディスプレイ)内に収まらずスクロールバーが発生します。 その際、画面を下部にスクロールした後に、Datagridviewをクリックすると、画面下部の明細行が選択されたにも関わらず、画面がDatagridviewの一番上の行を表示できる位置まで勝手にスクロールしてしまい、非常に使い勝手が悪い状況です。 (他の行を選択するたびに、勝手にスクロールされる状態です。) MouseOnイベント等にFirstDisplayedScrollingRowIndexの設定などを行いましたが、うまくいきません。 何か良い方法があれば、ご教授頂けませんでしょうか。 【追記】 環境と致しましてはWindows10タブレットを利用しており、タッチ操作が可能です。 恐らくですが、スクリーンキーボードが表示されたタイミングで画面のフォーカスが外れ、 再度、画面をクリックした際に、フォーカスされている項目が一番上になるように表示されているようです。 厳密には、画面クリックではなく、画面の再アクティブのようです。
回答: 最下行を選択したとき、Datagridviewを再表示していませんか? つまり、Datagridviewの内容を再度設定しなおしているなどのロジックが動くようになっていませんか?