グリッドの永続化とは、グリッドの現在の状態を後から利用できるように保存し、必要に応じてそれを復元することです。たとえば、グループ化、ソート、フィルタ処理、スタイルなどを適用したグリッドを、さらに何らかの操作を施した後やアプリケーションを再度起動した後に使用したい場合があります。これは、グリッドの状態を永続化することで可能になります。
グリッド状態の永続化を実装する手順は 2 つです。最初にグリッド状態をシリアライズし、次にそれを復元します。このトピックでは、フィルタ処理、ソート、グループ化を行った FlexGrid の状態を永続化する方法について説明します。
グリッド状態の永続化を実装するには、System.XML 名前空間の XMLWriter および XMLReader クラスを使用します。グリッド状態を保存するには、WriteStartElement メソッドを使用して、指定された開始タグを書き込み、WriteAttributeString メソッドを使用して、フィルタ、ソート、およびグループ化の属性を書き込みます。最後に、WriteEndElement メソッドを呼び出して WriteStartElement メソッドを閉じ、ストリーム、文字列、またはファイルの形式で状態を保存します。
後で使用するために WinForms FlexGrid の状態をシリアライズして XML ファイルにするには、次のコードを使用します。
保存された状態をグリッドにロードし直すには、オブジェクトの GetAttribute メソッドを使用して、フィルタ属性、ソート属性、グループ属性を読み取ります。次に、それらを FlexGrid の FilterDefinition、SortDefinition、または GroupDefinition プロパティにそれぞれ割り当てます。
WinForms FlexGrid の保存された状態をロードするには、次のコードを使用します。