0

情報:

私は C#.NET 3.5 winforms アプリケーションで作業しており、Infragistics ultrgrid 8.2 を使用しています。グリッドには 5 つの列があり、最初の 3 つは読み取り専用で、4 番目と 5 番目は値リストのドロップダウンです。4 番目の列は「From」と呼ばれます。

達成したいこと:

フォームが起動したら、「From」列の最初の行のセルにフォーカスを設定し、編集モードにもします。

私は何をコーディングしましたか:

次の関数を書きました


プライベートボイド SetFocus()

    {
        _grid.Focus();
        _grid.ActiveCell = _grid.Rows[0].Cells["From"];
        _grid.PerformAction(UltraGridAction.EnterEditMode);
        _grid.DisplayLayout.Bands[0].Columns["From"].Editor.Focus();
    }

フォームのペイント イベントを介して呼び出されると、正常に動作します。しかし、コントロールが各ペイントにフォーカスするのを見るのはイライラします。ロード時にこれを呼び出すと、フォーカスが正しく取得されます。ただし、コントロールを編集モードに設定しません。

もうありがとう

ヨツナ

4

2 に答える 2

0

よくわかりませんが、少しグーグルで調べてみました。

_grid.Rows[0].Cells["From"].Activate();

電話する代わりに

_grid.ActiveCell = _grid.Rows[0].Cells["From"];

効果があるかどうかはわかりませんが、試してみてください。

于 2010-11-24T14:37:16.700 に答える