「選択済み」と「アクティブ」を区別することが重要です。グリッドは決して自動的に行を選択しませんあなたが見ているのはActiveRowです。選択された行と同じように強調表示されます。
グリッドのActiveRowはCurrencyManagerと同期されているため、デフォルトでグリッドの最初の行が強調表示されます。 ActiveRowAppearanceとActiveCellAppearanceをリセットすると、ActiveRowからデフォルトのハイライトが削除されます。
this.ultraGrid1.DisplayLayout.Override.ActiveCellAppearance.Reset();
this.ultraGrid1.DisplayLayout.Override.ActiveRowAppearance.Reset();
しかし、それは、これはアクティブ行になってから行を妨げるものではないことに注意することが重要ですが、それだけで、グリッドは、もはやアクティブな行を強調していないこと。行はまだアクティブなので(これを防ぐ方法はありません)、アクティブな行を強調表示するものはまだ行を強調表示します。たとえば、アプリケーションにスタイルライブラリ(* .isl)ファイルをロードして、スタイルをActiveRowに適用すると、それでも表示されます。あなたは完全にすべてのプロパティ設定とスタイルライブラリの設定を無視して、より徹底した方法でアクティブな行の外観を無効にしたい場合は
、あなたはこれを行うことができます。このプロパティは、V9に追加されたこと
this.ultraGrid1.DisplayLayout.Override.ActiveAppearancesEnabled = Infragistics.Win.DefaultableBoolean.False;
注意を。 2古いバージョンでは存在しません。
私やGianniではうまくいきませんでした。 GianniのアプローチはListObjectデータを吹き飛ばします。それがうまくいかなかった理由を助けてくれますか?私はデフォルトのプロパティを持つ単純なグリッドを取り、それをバインドし、次に推奨される2行を作成しました。変化なし。 – ChadD
これは私のために働いた。同様の問題を抱えている人にとっては、行には「選択済み」と「有効」の2つのプロパティがあることに注意してください。 0行以上の行が選択されていても、1行だけがアクティブです。残念ながら、Selected行とActive行は、同じ方法で(デフォルトで)強調表示されています。 Active行は、行ヘッダーに三角形で示されます(行ヘッダーが有効な場合)。ActiveRowAppearance.Reset()呼び出しは、アクティブな行を強調表示しないようにUltraGridに指示します。お役に立てれば。 – AlfredBr