Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Datagridview WINFORM DOUBLECLICK riga cliccata
martedì 03 luglio 2007 - 14.37
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
andreapavia
Profilo
| Senior Member
203
messaggi | Data Invio:
mar 3 lug 2007 - 14:37
problemino:
WINFORM 2005
sul doubleclick di un record del datagridview iL mio programma deve leggerne due celle della riga doppiocliccata e fare una select E FIN QUI TUTTO OK....
Come faccio sull'evento doubleclick di un datagridview a capire se ho doppiocliccato sugli header oppure su un record di dati???????
Private Sub DataGridViewX_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGridViewXDoubleClick
end sub
grazie 1000
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 3 lug 2007 - 15:01
Prova a definire un oggetto DataGridView.HitTestInfo
Esempio:
Dim pt As Point = dataGridView1.PointToClient(Cursor.Position)
Dim hti As DataGridView.HitTestInfo = dataGridView1.HitTest(pt.X, pt.Y)
Debug.Trace(hti.Type.ToString) 'oggetto clicccato
If hti.Type = DataGrid.HitTestType.RowHeader Then
Debug.Trace("Beccato")
End If
andreapavia
Profilo
| Senior Member
203
messaggi | Data Invio:
mar 3 lug 2007 - 15:54
Grazie per la risposta!!!!!!
ma ahime non funziona!!!!!
non funziona,
nell'if non ci entra per nulla
secondo me con questo metodo lui va a leggere
la riga del datagrid evidenziata in blu e mi fa la select oltre che il sorting
io invece avrei bisogno che quando clicca sulle header deve fare solo il sorting
invece della select
questo il codice
Private Sub DataGridView1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGridView1.DoubleClick
Dim pt As Point = DataGridView1.PointToClient(Cursor.Position)
Dim hti As DataGridView.HitTestInfo = DataGridView1.HitTest(pt.X, pt.Y)
If hti.Type = DataGrid.HitTestType.RowHeader Then
MsgBox("header")
Else
Dim bm As BindingManagerBase = DataGridView1.BindingContext(DataGridView1.DataSource, DataGridView1.DataMember)
Dim drView As DataRowView
'riga selezionata del datarid
drView = bm.Current
IDSEL = drView.Item("id).ToString.ToUpper.Trim()
carica(IDSEL )
end if
end sub
grazie ancora....
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 3 lug 2007 - 15:55
Sbagliato io
Devi mettere DataGridView.HitTestType
andreapavia
Profilo
| Senior Member
203
messaggi | Data Invio:
mar 3 lug 2007 - 16:01
è vero neanche io ho guardato....
scusami ma.... datagridview.hitTestType non esiste nel vs 2005,,,, con l'intellisense non appare e mi da errore....
datagrid.hitTestType
credo che questo sia un metodo del dg non dgv
mi spiace recare fastidio....
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 3 lug 2007 - 16:20
Andavo a memoria ... e spesso la memoria inganna
Prova così
If hti.Type = DataGridViewHitTestType.RowHeader Then 'ovviamente puoi mettere qualsiasi cosa al posto di rowheader
andreapavia
Profilo
| Senior Member
203
messaggi | Data Invio:
mar 3 lug 2007 - 16:32
funziona alla grande!!!!!
grazie 1000 sei un drago!!!!!!!!!!!!!!!!!!!!!
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !