1

オブジェクト (エンティティ) にバインドされた GridView を使用しています。グリッドは、フィルタリングしたり、表示するデータに関してカスタマイズしたりできます。行、列、より具体的にはセルは、いくつかのルールを使用してフォーマットされますが、ユーザーが具体的に設定するフォーマットオプションからもフォーマットされます。

私の質問は、特定のセルに対して選択した書式を思い出す最善の方法についてです。現在、私の最善の方法は、そのセルのすべてのフォーマット (つまり、ForeColor、BackColor、FontWeight など) を検索する各セルの ID を格納することです。

別の方法は、問題のテーブルの ID と列名、および書式設定オプションを格納する新しいテーブル (たとえば、Formatted_Cells と呼ばれる) を作成することです。これには、セルが処理されてフォーマットをチェックするたびに Formatted_Cells テーブルをチェックする必要があります。かなりの処理です(上記の方法と同様)。これを行った場合、カスタム書式設定を持つ行にフラグを付けることができます。そうでない場合、Formatted_Cells テーブルをチェックする必要はありません。これは、すべてのセルの書式設定を覚えておくよりも有利です。フォーマット。

より良い方法はありますか?グリッドはデータベースからロードされ、他の場所で変更される可能性があるため、シリアライゼーションを使用して支援できるとは思いません。しかし、おそらく私は明らかな何かを見逃していますか?

とても有難い。

4

1 に答える 1

1

追加のテーブルもお勧めします。

考えられる解決策は次の 2 つです。

1- 2 つのパスでフォーマットを行います。最初に通常どおりグリッドをロードし、次にデータベースから Formatted_Cells テーブルを読み取り、グリッド内のスタイル設定された行を見つけて、特別なスタイルを適用します。

2-セルのデータベースをクエリする場合、左結合で Formatted_Cells テーブルを追加します。グリッドをロードするときに、左結合から来る可能性のある追加の列を確認し、それらを適用します。追加の列がない場合は、通常どおりスタイルします。

于 2012-08-24T14:16:17.610 に答える