PowerTools SPREAD for ASP.NET 8.0J > 開発者の手引き > セル型 > セル型の概要 |
セル型は、個々のセル、セル範囲、列、行、またはシート全体に対して指定できます。 それぞれのセル型には、そのセル型において設定可能な固有のプロパティがあります。一般的なセル型の処理は、セル型を定義し、必要なプロパティを設定し、このセル型をセルに割り当てるという手順になります。
セル型は、エディタ、レンダラ、およびフォーマッタで構成されています。
セルが編集モードのときにセルの編集コントロールの作成と管理を行います。
セルの値からテキストへの変換、またはテキストから値への変換を行います(たとえば、セルのText プロパティを取得または設定するときなど)。
編集モードでないとき、つまりエディタが存在しない状態のセルで、セルの長方形領域内のコントロールを描画するコードです。
セルの外観を、セルが編集モードであるかどうかにかかわらず同じにしておきたい場合は、1つのセル型を作成し、それをセルのCellType プロパティに設定します。こうすると、この1つのセル型が、セルのエディタ、レンダラ、およびフォーマッタとして使用されます。セルが編集モードであるかどうかによってセルの外観を変更したい場合は、2つの異なるセル型を作成し、一方をセルのエディタとして、もう一方をセルのレンダラとして、それぞれ設定します。また、通常はセルのフォーマッタにもどちらかのセル型を設定します。詳細については、ICellType インタフェースを参照してください。
セルの編集を設計する際に必要となるのは、セル型がエディタコントロールを返し、このコントロールがセル上に表示されるようにすることです。
エディタコントロールには、テキストベースのもの(テキストボックスなど)とグラフィックベースのもの(チェックボックスなど)があります。エディタコントロールには、ドロップダウンリスト(コンボボックスなど)を表示できます。
BaseCellType クラスは、組み込みのテキストベースのセル型(標準型、テキスト型、数値型、日付型など)の派生元となるクラスです。このクラスは、テキストベースのカスタムセル型を派生させるためにも使用します。データモデルは、色を含むあらゆる値を保持することができます。セル型には常に、データモデルからの未加工の値が渡されます。
セル型を行ヘッダまたは列ヘッダ内のセルに割り当てることもできますが、この場合のセル型は表示目的のみに使用されます。つまり、表示のみが可能であり、編集できません。
セル内の編集は、データ領域のセルだけに限られます。編集可能で、かつヘッダの役割を果たす領域を作成するには、列ヘッダを非表示(無効)にして、スプレッドシートの先頭行を固定してから、この固定行を疑似ヘッダとして使用することができます。
ヘッダの機能については、「ヘッダ」を参照してください。