IgbGrid を使用してグリッドを作成する際、セル内のテキストを右寄せにする方法を紹介します。以下の図は、「氏名列」と「職種列」に DataType=”GridColumnDataType.String” を指定した場合の例です。
方法
セルのテキストを右寄せするには、CellStylesScript
またはCellClassesScript
を活用して CSS を適用します。
以下の例では、「氏名列」にCellStylesScript
を使用して右寄せし、「職種列」にCellClassesScript
を用いて右寄せしています。
CellStylesScript を使用して右寄せする方法
CellStylesScript
を使用して、 justifyContent: “flex-end” を適用し、セル内のテキストを右寄せします。
<IgbColumn Field="@nameof(Person.Name)" Header="氏名" DataType="GridColumnDataType.String" CellStylesScript="CellStylesHandler"> </IgbColumn>
次に、CellStylesScript
を使用して、氏名列 に対してスタイルを適用します。
igRegisterScript("CellStylesHandler", () => { return { justifyContent: (rowData, columnKey, cellValue, rowIndex) => columnKey === "Name" ? "flex-end" : null }; }, true);
CellClassesScript を使用して右寄せする方法
CellClassesScript
を使用し sampleClass というクラスを作成します。
<IgbColumn Field="@nameof(Person.JobTitle)" Header="職種" DataType="GridColumnDataType.String" CellClassesScript="CellClassesHandler"> </IgbColumn>
次に、CellClassesScript
を使用して、職業列に対してクラスを設定します。ここでは、sampleClass というクラスが列内のすべてのセルに適用されます。
igRegisterScript("CellClassesHandler", () => { return { "sampleClass": (rowData, columnKey, cellValue, rowIndex) => columnKey === "JobTitle" }; }, true);
その後、sampleClass に対して justify-content: flex-end; を適用します。
.sampleClass { justify-content: flex-end; }
実行結果
この設定により、「氏名列」と「職種列」のテキストが右寄せされます (下図例)。
