- - PR -
DataGridのサブクラスで特定の行動で次のコントロールにフォーカスを移したい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-05-02 14:25
初めて投稿させて頂きます。cobaltと申します。
DataGridを継承したクラスを作っているのですが、特定の行動を取った際に次のコントロールにフォーカスを移動するようにしたいのですが、下記のようにやってもうまくいきません。 public class NewText : DataGrid { protected override void OnCurrentCellChanged(EventArgs e) { base.OnCurrentCellChanged (e); this.TopLevelControl.SelectNextControl(this,true,true,true,true); } } テストでカレントセルが移動したらフォーカス移動するようにしようとしたのですが、一瞬次のフォーカスに移動してるっぽい(次のコントロールであるテキストに一瞬カーソルが映る)のですが、すぐにDataGridにフォーカスが戻ってしまいます。 たとえばこれをDataGridを継承ではなくてTextBoxを継承してChangeTextイベントに同じような事をするとちゃんとフォーカスが移動します。ですのでDataGrid特有の問題だと思うのですが。 解決方法等ご存知の方はご教授お願いします。 |
1