yaronb
August 22nd, 2001, 04:23 AM
How can I freeze one or several columns in a data grid while scrolling horizonally ? (As the "Freeze" option for columns in an Access grid)
Thanks,
Yaron.
Thanks,
Yaron.
|
Click to See Complete Forum and Search --> : Freezing a Datagrid Column yaronb August 22nd, 2001, 04:23 AM How can I freeze one or several columns in a data grid while scrolling horizonally ? (As the "Freeze" option for columns in an Access grid) Thanks, Yaron. michi August 22nd, 2001, 10:23 AM Hi, DataGrid doesn't have so flexiable feature as MSFlexGrid on this issue. What I did before is using the Splits property of DataGrid. First, on the form layout, split the grid to two splits. And then use a proper DataSource. In codes, connect to DB first, and then call Grid1.Rebind. The last thing is creating a function like following to do some make-up on the grid. ========= Sub FormatGrid() ' 'Lock some columns as you said ' Const LockedItems = 4 ' 'Hide the right part columns in the left split ' For i = LockedItems To Grid1.Splits(0).Columns.count - 1 Grid1.Splits(0).Columns(i).Visible = False Next i ' 'Show the right part columns in the right split ' For i = LockedItems To Grid1.Splits(1).Columns.count - 1 Grid1.Splits(1).Columns(i).Visible = True Grid1.Splits(1).Columns(i).Alignment = 2 Next i ' 'Show the left part columns in the left split, and hide in the right split ' For i = 0 To LockedItems - 1 Grid1.Splits(0).Columns(i).Visible = True Grid1.Splits(0).Columns(i).Alignment = 2 Grid1.Splits(1).Columns(i).Visible = False Next i '''''''Refresh Grid'''''''' Grid1.Refresh ' 'set focus to the right split ' Grid1.Split = 1 End Sub ======== For more information, please look up MSDN, key words: DataGrid and Splits property. Regards, Michi codeguru.com
Copyright Internet.com Inc., All Rights Reserved. |