Ajaxフレームワーク UI部品リファレンス |
目次
索引
![]() ![]() |
第2章 画面部品 | > 2.3 テーブル部品 |
ViewColumnGridは、DataGridのテーブルの列を定義する部品です。
ViewColumnGridは、Internet Explorerでだけ利用可能な部品です。
<div rcf:type="DataGrid" ... > <div rcf:type="ViewColumnGrid" rcf:name="xxx" ... ></div> ... </div> |
表の項目の意味は、“表の項目の意味”を参照してください。
名前 |
データ型 |
説明 |
省略 |
省略値 |
属性指定 |
更新 |
部分更新 |
---|---|---|---|---|---|---|---|
name |
String |
カラムの名前を指定します。 |
不可 |
− |
値 |
不可 |
不可 |
Number |
セルの結合をする場合、結合するカラム数を指定します。 |
可 |
1 |
値 |
不可 |
不可 |
|
columnWidth |
Number |
列幅を指定します。単位はピクセルです。 |
可 |
指定なし |
値 |
不可 |
不可 |
Boolean |
フィルタ用コンボボックスの表示/非表示を指定します。
|
可 |
false |
値 |
不可 |
不可 |
|
Boolean |
列を固定表示するかどうかを指定します。
|
可 |
false |
値 |
不可 |
不可 |
|
Number |
結合されたセルに対するソート対象を指定します。 |
可 |
0 |
値 |
不可 |
不可 |
|
Render関数を持つオブジェクト |
render関数は、セルの表示カスタマイズを指示するオブジェクトを返します。 |
可 |
null |
値 |
不可 |
不可 |
|
Render関数を持つオブジェクト |
render関数は、選択されたセルの表示カスタマイズを指示するオブジェクトを返します。 |
可 |
null |
値 |
不可 |
不可 |
ViewColumnのプロパティも指定できます。ただし、focusable、selectableの各プロパティは利用できません。詳細は“ViewColumn”の“プロパティ”を参照してください。なお、comparatorプロパティに指定した関数には、プレフィックス付のデータを渡します。
部品共通のプロパティも指定できます。詳細は、“画面部品共通プロパティ”を参照してください。
<script type="text/javascript"> //<![CDATA[ var modelData = { data: [ { name1: 'data1-1', name2: 'data2-1', name3: 'data3-1'}, { name1: 'data1-2', name2: 'data2-2', name3: 'data3-2'}, { name1: 'data1-3', name2: 'data2-3', name3: 'data3-3'}, { name1: 'data1-4', name2: 'data2-4', name3: 'data3-4'}, { name1: 'data1-5', name2: 'data2-5', name3: 'data3-5'} ] }; //]]> </script> <div rcf:id="model1" rcf:type="Model" rcf:object="modelData"></div> <div rcf:type="DataGrid" rcf:data="{model1.data}" ... > <div rcf:type="ViewColumnGroup" rcf:dispType="column"> <div rcf:type="ViewColumnGrid" rcf:name="column1" rcf:label="ラベル1"></div> <div rcf:type="ViewColumnGrid" rcf:name="column2" rcf:label="ラベル2" columnSpan="2"></div> </div> <div rcf:type="ViewColumnGroup" rcf:dispType="data"> <div rcf:type="ViewColumnGrid" rcf:name="column3" rcf:propertyName="name1"></div> <div rcf:type="ViewColumnGrid" rcf:name="column4" rcf:propertyName="name2" columnWidth="80"></div> <div rcf:type="ViewColumnGrid" rcf:name="column5" rcf:propertyName="name3" columnWidth="80"></div> </div> </div> |
<script type="text/javascript"> //<![CDATA[ var modelData = { data: [ { name1: 'data1-1', name2: 'data2-1', name3: 'data3-1' , name4: 'data4-1', name5: 'data5-1'}, { name1: 'data1-2', name2: 'data2-2', name3: 'data3-2' , name4: 'data4-2', name5: 'data5-2'}, { name1: 'data1-3', name2: 'data2-3', name3: 'data3-3' , name4: 'data4-3', name5: 'data5-3'}, { name1: 'data1-4', name2: 'data2-4', name3: 'data3-4' , name4: 'data4-4', name5: 'data5-4'}, { name1: 'data1-5', name2: 'data2-5', name3: 'data3-5' , name4: 'data4-5', name5: 'data5-5'} ] }; //]]> </script> <div rcf:id="model1" rcf:type="Model" rcf:object="modelData"></div> <div rcf:type="DataGrid" rcf:data="{model1.data}" ... > <div rcf:type="ViewColumnGroup"> <div rcf:type="ViewColumnGrid" rcf:name="col1" rcf:propertyName="name1" rcf:label="ラベル1"></div> <div rcf:type="ViewColumnGrid" rcf:name="col2" rcf:propertyName="name2" rcf:label="ラベル2"></div> <div rcf:type="ViewColumnGrid" rcf:name="col3" rcf:propertyName="name3" rcf:label="ラベル3"></div> </div> <div rcf:type="ViewColumnGroup"> <div rcf:type="ViewColumnGrid" rcf:name="col4" rcf:propertyName="name4" rcf:label="ラベル4"></div> <div rcf:type="ViewColumnGrid" rcf:name="col5" rcf:propertyName="name5" rcf:label="ラベル5" columnSpan="2"></div> </div> </div> |
以下に例を示します。
<script type="text/javascript"> //<![CDATA[ var modelData = { scores: [ { id: 'ID0001', name: 'Andy', score: 90 }, { id: 'ID0002', name: 'Bob', score: 80 }, { id: 'ID0003', name: 'Cindy', score: 100 }, { id: 'ID0004', name: '...', score: 90 }, { id: 'ID0005', name: '...', score: 80 } ], flist: { column1: ['ID0001', 'ID0002', 'ID0003'], column2: ['2', 'Andy', 'Bob'], column3: [] } }; // イベント定義 eventMap = { grid1:{ selectfilter: selectFilter, ... } }; // イベント登録 RCF.addInitializedListener( function(eventObject) { rcf.event.EventRegistrar.registerEvents(eventMap, "eventMap"); } ); // フィルタ用コンボボックスのリストが選択された場合に呼び出される関数 function selectFilter() { // ここでフィルタリングしてください。 ... // ここですべてのフィルタ用コンボボックスの選択内容を取得してください。 var array = getFilterList(); // ここでデータオブジェクトを作成してください。 var changeScores = new Array(); ... // ここでDataGridのdataプロパティを更新してください。 grid1.getDataProvider("data").setData(changeScores); } //]]> </script> ... <div rcf:id="model1" rcf:type="Model" rcf:object="modelData"></div> <div rcf:type="DataGrid" rcf:id="grid1" rcf:data="{model1.scores}" rcf:filterList="{model1.flist}" rcf:filterCount="5"> <div rcf:type="ViewColumnGrid" rcf:name="column1" rcf:propertyName="id" rcf:label="ID" rcf:showFilter="true"></div> <div rcf:type="ViewColumnGrid" rcf:name="column2" rcf:propertyName="name" rcf:label="名前" rcf:showFilter="true"></div> <div rcf:type="ViewColumnGrid" rcf:name="column3" rcf:propertyName="score" rcf:label="スコア" rcf:showFilter="false"> <div rcf:type="NumberInput"></div> </div> </div> |
以下は、フィルタ用コンボボックスの表示例です。
<div rcf:type="DataGrid" ... > <div rcf:type="ViewColumnCheck" rcf:name="check" rcf:propertyName="check" rcf:label="選択"></div> <div rcf:type="ViewColumnTree" rcf:name="detail" rcf:label="詳細" rcf:fixable="true"></div> <div rcf:type="ViewColumnGrid" rcf:name="column1" rcf:propertyName="name1" rcf:label="ID"></div> <div rcf:type="ViewColumnGrid" rcf:name="column2" rcf:propertyName="name2" rcf:label="名前"></div> <div rcf:type="ViewColumnGrid" rcf:name="column3" rcf:propertyName="name3" rcf:label="スコア"></div> ... </div> |
以下は、“詳細”列を固定列に指定した場合の固定列指定機能の表示例です。
複数の列を固定列に指定した場合、最後に指定された列が固定列となります。
... <div rcf:type="DataGrid" rcf:data="{model1.data}"> <div rcf:type="ViewColumnGroup" rcf:dispType="column"> <div rcf:type="ViewColumnGrid" rcf:name="column1" rcf:label="ラベル1"></div> <div rcf:type="ViewColumnGrid" rcf:name="column2" rcf:label="ラベル2" rcf:columnSpan="5" rcf:sortitem="2"></div> </div> ... </div> |
上記の例でのソートの対象データを以下に示します。
プロパティ名 |
データ型 |
説明 |
---|---|---|
color |
String |
セルの文字の色 |
backgroundColor |
String |
セルの背景色 |
borderColor |
String |
セルのボーダーの色 |
borderStyle |
String |
セルのボーダーの種類 |
fontFamily |
String |
セルの文字のフォント名 |
fontSize |
String |
セルの文字のフォントサイズ(ピクセル数) |
fontWeight |
String |
セルの文字のウェイト |
textAlign |
String |
セルのテキストの行揃え |
verticalAlign |
String |
セル内容の縦のデフォルト表示位置 |
value |
String |
実際に表示するセルの内容 |
textDecoration |
String |
セルの文字装飾 |
取り消し線(textDecoration)の設定には、以下の2つの方法があります。
本部品のスタイルプロパティでは、定義する列のスタイルを指定することができます。
パーツ名 |
プレフィックス |
クラス名 |
使用可能なスタイル |
---|---|---|---|
列ヘッダ |
ccell |
rcf-DataGrid-ccell* |
|
セル |
cell |
rcf-DataGrid-cell* |
|
ツリー展開時の詳細データ表示セル |
detail |
rcf-DataGrid-detail* |
|
注) DataGridでは、textDecorationを指定することができます。
textDecorationでは、文字装飾を指定します。CSSのtext-decorationプロパティの値を指定できます。
line-throughを指定すると、取り消し線が設定できます。Internet Explorerでは、blinkは指定できません。
取り消し線(textDecoration)の設定には、以下の2つの方法があります。
固有のイベントリスナはありません。部品共通のイベントリスナは、“画面部品共通イベントリスナ”を参照してください。
固有のJavaScript APIはありません。部品共通のJavaScript APIは、“画面部品共通JavaScript API”を参照してください。
目次
索引
![]() ![]() |