OriginY は、行レイアウト内の垂直セル座標を指定します。OriginY が Relative に設定されている場合は、行レイアウト内の最後の項目を基準として相対的に配置されます。
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; }