'Declaration Public ReadOnly Property RowLayoutColumnInfo As RowLayoutColumnInfo
public RowLayoutColumnInfo RowLayoutColumnInfo {get;}
You can set various properties in the returned object to customize where the cell associated with this column shows up.
By default all the columns are visible. Set Hidden to true to hide the column.
Set UseRowLayout property to true to turn on the row-layout functionality.
Imports Infragistics.Shared Imports Infragistics.Win Imports Infragistics.Win.UltraWinGrid Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim dt As DataTable = New DataTable("Table1") dt.Columns.Add("Col1", GetType(String)) dt.Columns.Add("Col2", GetType(String)) dt.Columns.Add("Col3", GetType(String)) dt.Columns.Add("Col4", GetType(String)) dt.Columns.Add("Col5", GetType(String)) Dim random As Random = New Random() Dim i As Integer For i = 0 To 100 - 1 Dim rowdata(4) As String Dim j As Integer For j = 0 To 5 - 1 rowdata(j) = random.Next(1000).ToString() Next dt.Rows.Add(rowdata) Next Me.UltraGrid1.DataSource = dt ' Get the columns of Table1 band in the UltraGrid. Dim gridColumns As ColumnsCollection = Me.UltraGrid1.DisplayLayout.Bands("Table1").Columns ' Turn on the row layout functionality for Table1 band. Me.UltraGrid1.DisplayLayout.Bands("Table1").RowLayoutStyle = RowLayoutStyle.ColumnLayout ' Allow the user to only resize width of the columns/labels. Me.UltraGrid1.DisplayLayout.Bands("Table1").Override.AllowRowLayoutCellSizing = RowLayoutSizing.Horizontal Me.UltraGrid1.DisplayLayout.Bands("Table1").Override.AllowRowLayoutLabelSizing = RowLayoutSizing.Horizontal ' Setup Col1 column. gridColumns("Col1").RowLayoutColumnInfo.OriginX = 0 gridColumns("Col1").RowLayoutColumnInfo.OriginY = 0 gridColumns("Col1").RowLayoutColumnInfo.SpanX = 1 gridColumns("Col1").RowLayoutColumnInfo.SpanY = 1 ' Set the preferred cell size to 200,0 so that it's at least 200 pixel wide. ' Height of 0 means that the UltraGrid will calculate one based on the font. gridColumns("Col1").RowLayoutColumnInfo.PreferredCellSize = New Size(200, 0) ' Set the MinimumCellSize to 50,0 to prevent the user from resizing the column ' and making it smaller than 50 in width. gridColumns("Col1").RowLayoutColumnInfo.MinimumCellSize = New Size(50, 0) ' Setup Col2 column. gridColumns("Col2").RowLayoutColumnInfo.OriginX = 1 gridColumns("Col2").RowLayoutColumnInfo.OriginY = 0 gridColumns("Col2").RowLayoutColumnInfo.SpanX = 1 gridColumns("Col2").RowLayoutColumnInfo.SpanY = 1 ' Setup Col3 column. gridColumns("Col3").RowLayoutColumnInfo.OriginX = 0 gridColumns("Col3").RowLayoutColumnInfo.OriginY = 1 gridColumns("Col3").RowLayoutColumnInfo.SpanX = 1 gridColumns("Col3").RowLayoutColumnInfo.SpanY = 1 ' Setup Col4 column. gridColumns("Col4").RowLayoutColumnInfo.OriginX = 1 gridColumns("Col4").RowLayoutColumnInfo.OriginY = 1 gridColumns("Col4").RowLayoutColumnInfo.SpanX = 1 gridColumns("Col4").RowLayoutColumnInfo.SpanY = 1 ' Set the preferred cell size to 150,0 so that it's at least 150 pixel wide. ' Height of 0 means that the UltraGrid will calculate one based on the font. gridColumns("Col4").RowLayoutColumnInfo.PreferredCellSize = New Size(150, 0) ' Set the MinimumCellSize to 50,0 to prevent the user from resizing the column ' and making it smaller than 50 in width. gridColumns("Col4").RowLayoutColumnInfo.MinimumCellSize = New Size(60, 0) ' Setup Col5 column. gridColumns("Col5").RowLayoutColumnInfo.OriginX = 0 gridColumns("Col5").RowLayoutColumnInfo.OriginY = 2 ' Set the SpanX to Remainder so that it occupies the rest of the horizontal space. gridColumns("Col5").RowLayoutColumnInfo.SpanX = RowLayoutColumnInfo.Remainder gridColumns("Col5").RowLayoutColumnInfo.SpanY = 1 ' Set the preferred cell size height to 40. gridColumns("Col5").RowLayoutColumnInfo.PreferredCellSize = New Size(0, 40) gridColumns("Col5").CellMultiLine = DefaultableBoolean.True End Sub
using Infragistics.Shared; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using System.Diagnostics; private void Form1_Load(object sender, System.EventArgs e) { DataTable dt = new DataTable( "Table1" ); dt.Columns.Add( "Col1", typeof( string ) ); dt.Columns.Add( "Col2", typeof( string ) ); dt.Columns.Add( "Col3", typeof( string ) ); dt.Columns.Add( "Col4", typeof( string ) ); dt.Columns.Add( "Col5", typeof( string ) ); Random random = new Random( ); for ( int i = 0; i < 100; i++ ) { string[] rowData = new string[ 5 ]; for ( int j = 0; j < 5; j++ ) rowData[j] = random.Next( 1000 ).ToString( ); dt.Rows.Add( rowData ); } this.ultraGrid1.DataSource = dt; // Get the columns of Table1 band in the UltraGrid. ColumnsCollection gridColumns = this.ultraGrid1.DisplayLayout.Bands["Table1"].Columns; // Turn on the row layout functionality for Table1 band. this.ultraGrid1.DisplayLayout.Bands["Table1"].RowLayoutStyle = RowLayoutStyle.ColumnLayout; // Allow the user to only resize width of the columns/labels. this.ultraGrid1.DisplayLayout.Bands["Table1"].Override.AllowRowLayoutCellSizing = RowLayoutSizing.Horizontal; this.ultraGrid1.DisplayLayout.Bands["Table1"].Override.AllowRowLayoutLabelSizing = RowLayoutSizing.Horizontal; // Setup Col1 column. gridColumns["Col1"].RowLayoutColumnInfo.OriginX = 0; gridColumns["Col1"].RowLayoutColumnInfo.OriginY = 0; gridColumns["Col1"].RowLayoutColumnInfo.SpanX = 1; gridColumns["Col1"].RowLayoutColumnInfo.SpanY = 1; // Set the preferred cell size to 200,0 so that it's at least 200 pixel wide. // Height of 0 means that the UltraGrid will calculate one based on the font. gridColumns["Col1"].RowLayoutColumnInfo.PreferredCellSize = new Size( 200, 0 ); // Set the MinimumCellSize to 50,0 to prevent the user from resizing the column // and making it smaller than 50 in width. gridColumns["Col1"].RowLayoutColumnInfo.MinimumCellSize = new Size( 50, 0 ); // Setup Col2 column. gridColumns["Col2"].RowLayoutColumnInfo.OriginX = 1; gridColumns["Col2"].RowLayoutColumnInfo.OriginY = 0; gridColumns["Col2"].RowLayoutColumnInfo.SpanX = 1; gridColumns["Col2"].RowLayoutColumnInfo.SpanY = 1; // Setup Col3 column. gridColumns["Col3"].RowLayoutColumnInfo.OriginX = 0; gridColumns["Col3"].RowLayoutColumnInfo.OriginY = 1; gridColumns["Col3"].RowLayoutColumnInfo.SpanX = 1; gridColumns["Col3"].RowLayoutColumnInfo.SpanY = 1; // Setup Col4 column. gridColumns["Col4"].RowLayoutColumnInfo.OriginX = 1; gridColumns["Col4"].RowLayoutColumnInfo.OriginY = 1; gridColumns["Col4"].RowLayoutColumnInfo.SpanX = 1; gridColumns["Col4"].RowLayoutColumnInfo.SpanY = 1; // Set the preferred cell size to 150,0 so that it's at least 150 pixel wide. // Height of 0 means that the UltraGrid will calculate one based on the font. gridColumns["Col4"].RowLayoutColumnInfo.PreferredCellSize = new Size( 150, 0 ); // Set the MinimumCellSize to 50,0 to prevent the user from resizing the column // and making it smaller than 50 in width. gridColumns["Col4"].RowLayoutColumnInfo.MinimumCellSize = new Size( 60, 0 ); // Setup Col5 column. gridColumns["Col5"].RowLayoutColumnInfo.OriginX = 0; gridColumns["Col5"].RowLayoutColumnInfo.OriginY = 2; // Set the SpanX to Remainder so that it occupies the rest of the horizontal space. gridColumns["Col5"].RowLayoutColumnInfo.SpanX = RowLayoutColumnInfo.Remainder; gridColumns["Col5"].RowLayoutColumnInfo.SpanY = 1; // Set the preferred cell size height to 40. gridColumns["Col5"].RowLayoutColumnInfo.PreferredCellSize = new Size( 0, 40); gridColumns["Col5"].CellMultiLine = DefaultableBoolean.True; }
Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2