Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Visual Basic
Expertise: Intermediate
Nov 17, 1998

Force a Single Select for a Grid

Setting the SelectionMode property of the MSFlexGrid to flexSelectionByRow forces all columns in a row to be selected rather than a single cell. It also allows selection of multiple rows simultaneously. To force a single row selection for a grid, I have a function called UpdateGrid that ensures only one row is selected, regardless of a drag on the rows or if the Shift and the Up and Down arrow keys are used. This is useful if you want to present a list of items in a grid format and only want one highlighted:
 
Sub UpdateGrid(grdInput As MSFlexGrid)
	If grdInput.Rows = (grdInput.FixedRows + 1) Then
		' only one row in the grid and it
		' it a fixed one: don't do anything
		Exit Sub
	Else
		' more than one row in the grid
		If grdInput.RowSel <> grdInput.Row Then
			' user selected a different row in the grid 
			' than the current row:
			' set it to the highlighted row
			grdInput.RowSel = grdInput.Row
		End If
	End If
End Sub
In the SelChange event for a grid, put in this code:
 
Private Sub myGrid_SelChange
	UpdateGrid myGrid
End Sub
Mike Peters
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date