Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.

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



Building the Right Environment to Support AI, Machine Learning and Deep Learning

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
		' 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.



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