FlexSheetコントロールをカスタマイズして、クライアント側で行/列ヘッダーの追加と削除を行うことができます。このため、ワークシートに複数の行/列ヘッダーを追加したり、既存の行/列ヘッダーを削除することもできます。
FlexSheetを含む基本的なMVCアプリケーションを作成して実行すると、デフォルトでは、FlexSheetコントロールに行ヘッダーと列ヘッダーが1つずつ置かれます。列ヘッダーには各列を表す英大文字("A"、"B"、"C"など)が表示され、行ヘッダーには各行を表す数字("1"、"2"、"3"など)が表示されます。ただし、ヘッダーを追加したり、既存のヘッダーを削除して、このデフォルトの動作を変更できます。それには、rowHeaders.columnsコレクションとcolumnHeaders.rowsコレクションに対してpush()関数を呼び出して、それぞれ行ヘッダーと列ヘッダーを追加します。また、行ヘッダーや列ヘッダーを削除するには、rowHeaders.columnsコレクションとcolumnHeaders.rowsコレクションに対してそれぞれremoveAt()関数を呼び出します。
次の図は、行/列ヘッダーを追加および削除するボタンが付いた非連結FlexSheetコントロールです。次の例では、ボタンクリックによってremoveAt()とpush()が呼び出されます。

次のコード例は、FlexSheetで行/列ヘッダーを追加および削除する方法を示します。
| C# |
コードのコピー
|
|---|---|
public class MultipleHeaderController : Controller { // GET: MultipleHeader public ActionResult MultipleHeaderIndex() { return View(); } } |
|
MultipleHeader.cshtml
| HTML |
コードのコピー
|
|---|---|
<script>
function addRowHeader() {
var flex = wijmo.Control.getControl('#mHeadersSheet');
flex.rowHeaders.columns.push(new wijmo.grid.Column());
}
function removeRowHeader() {
var colCnt, flex = wijmo.Control.getControl('#mHeadersSheet');
flex.rowHeaders.columns.removeAt(colCnt - 1);
}
function addColumnHeader() {
var rowCnt, flex = wijmo.Control.getControl('#mHeadersSheet');
flex.columnHeaders.rows.push(new wijmo.grid.Row());
}
function removeColumnHeader() {
var flex = wijmo.Control.getControl('#mHeadersSheet');
flex.columnHeaders.rows.removeAt(rowCnt - 1);
}
</script>
<div>
<button type="button" class="btn btn-default" onclick="addRowHeader()">行ヘッダーを追加</button>
<button type="button" class="btn btn-default" onclick="removeRowHeader()">行ヘッダーを削除</button>
<button type="button" class="btn btn-default" onclick="addColumnHeader()">列ヘッダーを追加</button>
<button type="button" class="btn btn-default" onclick="removeColumnHeader()">列ヘッダーを削除</button>
<br /><br />
<c1-flex-sheet id="mHeadersSheet" class="flexSheet" is-read-only="false">
<c1-unbound-sheet column-count="8" row-count="20"></c1-unbound-sheet>
</c1-flex-sheet>
</div>
|
|