UltraGrid でセルの中の長い文字列を折り返して表示させたい場合は、
- 行の高さが中身に合わせて自動調整されるように DisplayLayout の Override の RowSizing に AutoFixed を設定する。
- 列の CellMultiLine プロパティに True を設定する。
で実現できます。
例えば初期表示時にこれらの設定をしたい場合は、UltraGrid の InitalizeLayout イベントを使用するのがお勧めです。
private void ultraGrid1_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e) { // 行の高さが中身に合わせて自動調整されるように、DisplayLayout の Override の RowSizing に AutoFixed を設定する。 // ※この設定をしないと、テキストは折り返されて表示されるものの、行に1行分の高さしか割り当てられず、 // ※非常に見にくい結果になってしまいます。 e.Layout.Override.RowSizing = Infragistics.Win.UltraWinGrid.RowSizing.AutoFixed; // 以下のコードは「Excerpt」列で折り返して表示させたいという想定です。 e.Layout.Bands[0].Columns["Excerpt"].CellMultiLine = Infragistics.Win.DefaultableBoolean.True; }
実行結果
API リファレンス
- RowSizing プロパティ
- CellMultiLine プロパティ (UltraGridColumn)