3

私はWindowsフォームでインフラジスティックスウルトラグリッドコントロールを持っています。グリッドに新しい行を挿入するための[新規追加]ボタンが外側にあります。

私が直面した問題は、グリッド内のセルを編集しているときにグリッドの外側のボタンをクリックすると、セルのフォーカスが失われないことです。このため、編集された新しい値は、基になるデータソースに更新されません。

[新規追加]ボタンは、前の行の編集値に基づいて計算されたデフォルト値を持つこの特定の列で新しい行を作成するため、フォーカスを失い、基になるデータソースを更新するためにこのセルが必要です。

では、ウルトラグリッドセルの焦点を外す方法について何かアイデアはありますか?この状況は、通常のGridViewにも当てはまる可能性があります。

4

2 に答える 2

8

ボタンがツールバー上にある場合、ツールバーがフォーカスされないため、表示されている動作が期待されます。ロジックを実行する前にこれが当てはまる場合は、グリッドのPerformActionメソッドを使用し、UltraGridAction.CommitRowを渡して、エディターであった行に更新を強制的にコミットさせることができます。

例えば:

this.ultraGrid1.PerformAction(UltraGridAction.CommitRow);
于 2012-07-05T20:57:01.403 に答える
1

myUltraGrid.ActiveRow.Cells[0].Activate();も使用しました。しかし、@alhalamaによる解決策は私が推測するより良いものです。

于 2012-07-06T10:14:32.333 に答える