Call me stupid but I can't seem to track down the property to disable column sorting. I dont want users to be able to use this feature.
A hint please?
Many thanksJason
UltraGrid provide 2 mode when click Header: Sort or Select Column
In order to disable Sor, set property HeaderClickAction = Select.Ex: UltraWinGrid.DisplayLayout.Override.HeaderClickAction = Select
If you dont want to Select column after set HeaderClickAction = Select, set property:
UltraWinGrid.DisplayLayout.Override.SelectTypeCol = None
Goodluck
Thanks. Worked like a charm.
When you say the column is marked, are you meaning that the entire column is selected or highlighted or are you meaning that the column header itself is selected? I ask as I have grids where I have both happening.
CheersJason
Hi!
I mean that the entire column is selected/highlighted. The column header isn't highlighted at all, just the column underneath.
/dahrlin :-)
Setting SelectTypeCol to None (as the sample code above shows) should prevent the column from being selected.
Hi Mike,
This is pradeep. I am having one issue with Ultrawingrid regarding sorting. When the data is loaded for the first time, when i click on column header, it is sorting correctly. But the problem is, when the data is unloaded, this sorting(column sorting) is still enable, which means when i load the data once again, it is displaying data in sorted order(Taking previous column header click as reference). "When the data is unloaded, i need sorting to be disabled, which means after the data is loaded again, data should be sorted when we click on column header again." I have used the above mention method for sorting the data. So please give me a solution.
Regards,
Pradeep
Pradeep,
If you want to reset the sorted columns when unloading then reloading your data, you will simply need to clear the sorted columns, i.e.:
this.ultraGrid1.DisplayLayout.Bands[0].SortedColumns.Clear();
-Matt
Hi Pradeep,
There's no way to set the SortIndicator on a group of columns all at once. You would have to loop through the columns and set the SortIndicator on each one individually.
If you want to change what happens when use changes the sort indicator by clicking a column header, then what you would do is handle the BeforeSortChange event of the grid. In this event, you can example the current sort indicators on each column and see what is changing, then do whatever you want - such as adding additional sorted columns.
Hi,
I have one more problem.How to give sort indicators to all the columns, when i click on one column header. When i click on 1st column header, sort indicators should be given to all the columns, sorting should be done based on this.
Pradeep.
I have one more problem. I am converting a VB application in to Dot Net. In VB earlier FPSpread is used to display the data and now we are using UltraGrid. The problem is while sorting coloumns in FPSpread, we can mention the range of coloumns to be sorted as given below:
fpObjects.SortKey(1) = COL_SEVERITYHIDDEN
fpObjects.col = 1 fpObjects.Col2 = fpObjects.MaxCols (in present case 7) fpObjects.Row = 1 fpObjects.Row2 = fpObjects.MaxRows (in present case 6) fpObjects.Action = ActionSort
The description for fpObjects.col and fpObjects.Col2 given in fpspread are "Sets or returns a specific column or specifies the first column of a block of cells on which an operation is to occur." and "Sets or returns the last column of a block of cells on which an operation is to occur."
Do we have any such properties in Ultra Grid, where we can sort a particular range of coloumns i.e., from coloumn 1 to 7 and from Row 1 to 6.
Thanks,
You can add a column to the SortedColumns collection yourself, i.e.:
this.ultraGrid1.DisplayLayout.Bands[0].SortedColumns.Add("My Column Key", false);