Soit une datagrid comportant une combobox (comme décrit dans la FAQ du site
de SyncFusion).
Dans la classe NoKeyUpCombo, on surcharge la procédure WndProc pour filtrer
(ignorer) les éventuels appuis sur la touche TAB.
J'aimerais, dans cette procédure, récupérer l'appui simultané sur les
touches ALT + flèche vers le bas. Ceci afin de pouvoir forcer la combobox à
se dérouler (comme toute combobox qui se respecte).
J'ai essayé avec les messages WM_KEYDOWN et WM_SYSKEYDOWN mais je n'y arrive
pas.
Je sais qu'il faut traiter plusieurs messages successifs, mais je n'ai
certainement pas tout compris.
Un petit coup de main m'arrangerais bien !
___________
Bernard
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Zoury
Salut Bernard! :O)
Je n'ai pas le temps de testé pour l'instant , mais essai plutôt d'overrider (<- c'est quoi donc le terme français ?!?) ProcessCmdKey().
voici un exemple que j'ai posté la semaine passée : http://groups.google.com/groups?selm=OjQRPCo7EHA.2124%40TK2MSFTNGP14.phx.gbl
La méthode WndProc() ne reçoit pas les messages WM_KEYDOWN et autres variantes de ce genre, c'est plutôt le contrôle qui a le focus *dans* le datagrid qui les reçoit.
note : on peut aussi se brancher directement sur les événements du contrôle qui a le focus par l'entremise de DataGridColumnStyle... j'avais trouvé un exemple sur le web si ça t'intéresse, mais, au premier coup d'oeil, ça m'apparaissait moins propre et plus difficile d'entretien..
-- Cordialement Yanick MVP pour Visual Basic "Bernard" a écrit dans le message de news:
Bonjour,
Soit une datagrid comportant une combobox (comme décrit dans la FAQ du
site
de SyncFusion).
Dans la classe NoKeyUpCombo, on surcharge la procédure WndProc pour
filtrer
(ignorer) les éventuels appuis sur la touche TAB.
J'aimerais, dans cette procédure, récupérer l'appui simultané sur les touches ALT + flèche vers le bas. Ceci afin de pouvoir forcer la combobox
à
se dérouler (comme toute combobox qui se respecte).
J'ai essayé avec les messages WM_KEYDOWN et WM_SYSKEYDOWN mais je n'y
arrive
pas. Je sais qu'il faut traiter plusieurs messages successifs, mais je n'ai certainement pas tout compris.
Un petit coup de main m'arrangerais bien ! ___________ Bernard
Salut Bernard! :O)
Je n'ai pas le temps de testé pour l'instant , mais essai plutôt d'overrider
(<- c'est quoi donc le terme français ?!?) ProcessCmdKey().
voici un exemple que j'ai posté la semaine passée :
http://groups.google.com/groups?selm=OjQRPCo7EHA.2124%40TK2MSFTNGP14.phx.gbl
La méthode WndProc() ne reçoit pas les messages WM_KEYDOWN et autres
variantes de ce genre, c'est plutôt le contrôle qui a le focus *dans* le
datagrid qui les reçoit.
note : on peut aussi se brancher directement sur les événements du contrôle
qui a le focus par l'entremise de DataGridColumnStyle... j'avais trouvé un
exemple sur le web si ça t'intéresse, mais, au premier coup d'oeil, ça
m'apparaissait moins propre et plus difficile d'entretien..
--
Cordialement
Yanick
MVP pour Visual Basic
"Bernard" <bernard.perdriaudcedex@octanie.com> a écrit dans le message de
news:uvmAg4n8EHA.3840@tk2msftngp13.phx.gbl...
Bonjour,
Soit une datagrid comportant une combobox (comme décrit dans la FAQ du
site
de SyncFusion).
Dans la classe NoKeyUpCombo, on surcharge la procédure WndProc pour
filtrer
(ignorer) les éventuels appuis sur la touche TAB.
J'aimerais, dans cette procédure, récupérer l'appui simultané sur les
touches ALT + flèche vers le bas. Ceci afin de pouvoir forcer la combobox
à
se dérouler (comme toute combobox qui se respecte).
J'ai essayé avec les messages WM_KEYDOWN et WM_SYSKEYDOWN mais je n'y
arrive
pas.
Je sais qu'il faut traiter plusieurs messages successifs, mais je n'ai
certainement pas tout compris.
Un petit coup de main m'arrangerais bien !
___________
Bernard
Je n'ai pas le temps de testé pour l'instant , mais essai plutôt d'overrider (<- c'est quoi donc le terme français ?!?) ProcessCmdKey().
voici un exemple que j'ai posté la semaine passée : http://groups.google.com/groups?selm=OjQRPCo7EHA.2124%40TK2MSFTNGP14.phx.gbl
La méthode WndProc() ne reçoit pas les messages WM_KEYDOWN et autres variantes de ce genre, c'est plutôt le contrôle qui a le focus *dans* le datagrid qui les reçoit.
note : on peut aussi se brancher directement sur les événements du contrôle qui a le focus par l'entremise de DataGridColumnStyle... j'avais trouvé un exemple sur le web si ça t'intéresse, mais, au premier coup d'oeil, ça m'apparaissait moins propre et plus difficile d'entretien..
-- Cordialement Yanick MVP pour Visual Basic "Bernard" a écrit dans le message de news:
Bonjour,
Soit une datagrid comportant une combobox (comme décrit dans la FAQ du
site
de SyncFusion).
Dans la classe NoKeyUpCombo, on surcharge la procédure WndProc pour
filtrer
(ignorer) les éventuels appuis sur la touche TAB.
J'aimerais, dans cette procédure, récupérer l'appui simultané sur les touches ALT + flèche vers le bas. Ceci afin de pouvoir forcer la combobox
à
se dérouler (comme toute combobox qui se respecte).
J'ai essayé avec les messages WM_KEYDOWN et WM_SYSKEYDOWN mais je n'y
arrive
pas. Je sais qu'il faut traiter plusieurs messages successifs, mais je n'ai certainement pas tout compris.
Un petit coup de main m'arrangerais bien ! ___________ Bernard
Bernard
Merci Yannick de la réponse...
mais mon problème, c'est ALT+Down.
Keys.F4 (ton exemple), je vois... Keys.Alt, je vois... Keys.Down, je vois... mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne sais comment ...
merci quand même. ________________ Bernard
Zoury wrote:
Salut Bernard! :O)
Je n'ai pas le temps de testé pour l'instant , mais essai plutôt d'overrider (<- c'est quoi donc le terme français ?!?) ProcessCmdKey().
voici un exemple que j'ai posté la semaine passée : http://groups.google.com/groups?selm=OjQRPCo7EHA.2124%40TK2MSFTNGP14.phx.gbl
La méthode WndProc() ne reçoit pas les messages WM_KEYDOWN et autres variantes de ce genre, c'est plutôt le contrôle qui a le focus *dans* le datagrid qui les reçoit.
note : on peut aussi se brancher directement sur les événements du contrôle qui a le focus par l'entremise de DataGridColumnStyle... j'avais trouvé un exemple sur le web si ça t'intéresse, mais, au premier coup d'oeil, ça m'apparaissait moins propre et plus difficile d'entretien..
Bonjour,
Soit une datagrid comportant une combobox (comme décrit dans la FAQ du site de SyncFusion).
Dans la classe NoKeyUpCombo, on surcharge la procédure WndProc pour filtrer (ignorer) les éventuels appuis sur la touche TAB.
J'aimerais, dans cette procédure, récupérer l'appui simultané sur les touches ALT + flèche vers le bas. Ceci afin de pouvoir forcer la combobox à se dérouler (comme toute combobox qui se respecte).
J'ai essayé avec les messages WM_KEYDOWN et WM_SYSKEYDOWN mais je n'y arrive pas. Je sais qu'il faut traiter plusieurs messages successifs, mais je n'ai certainement pas tout compris.
Un petit coup de main m'arrangerais bien ! ___________ Bernard
Merci Yannick de la réponse...
mais mon problème, c'est ALT+Down.
Keys.F4 (ton exemple), je vois...
Keys.Alt, je vois...
Keys.Down, je vois...
mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne sais
comment ...
merci quand même.
________________
Bernard
Zoury wrote:
Salut Bernard! :O)
Je n'ai pas le temps de testé pour l'instant , mais essai plutôt
d'overrider (<- c'est quoi donc le terme français ?!?)
ProcessCmdKey().
voici un exemple que j'ai posté la semaine passée :
http://groups.google.com/groups?selm=OjQRPCo7EHA.2124%40TK2MSFTNGP14.phx.gbl
La méthode WndProc() ne reçoit pas les messages WM_KEYDOWN et autres
variantes de ce genre, c'est plutôt le contrôle qui a le focus *dans*
le datagrid qui les reçoit.
note : on peut aussi se brancher directement sur les événements du
contrôle qui a le focus par l'entremise de DataGridColumnStyle...
j'avais trouvé un exemple sur le web si ça t'intéresse, mais, au
premier coup d'oeil, ça m'apparaissait moins propre et plus difficile
d'entretien..
Bonjour,
Soit une datagrid comportant une combobox (comme décrit dans la FAQ
du site de SyncFusion).
Dans la classe NoKeyUpCombo, on surcharge la procédure WndProc pour
filtrer (ignorer) les éventuels appuis sur la touche TAB.
J'aimerais, dans cette procédure, récupérer l'appui simultané sur les
touches ALT + flèche vers le bas. Ceci afin de pouvoir forcer la
combobox à se dérouler (comme toute combobox qui se respecte).
J'ai essayé avec les messages WM_KEYDOWN et WM_SYSKEYDOWN mais je
n'y arrive pas.
Je sais qu'il faut traiter plusieurs messages successifs, mais je
n'ai certainement pas tout compris.
Un petit coup de main m'arrangerais bien !
___________
Bernard
Keys.F4 (ton exemple), je vois... Keys.Alt, je vois... Keys.Down, je vois... mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne sais comment ...
merci quand même. ________________ Bernard
Zoury wrote:
Salut Bernard! :O)
Je n'ai pas le temps de testé pour l'instant , mais essai plutôt d'overrider (<- c'est quoi donc le terme français ?!?) ProcessCmdKey().
voici un exemple que j'ai posté la semaine passée : http://groups.google.com/groups?selm=OjQRPCo7EHA.2124%40TK2MSFTNGP14.phx.gbl
La méthode WndProc() ne reçoit pas les messages WM_KEYDOWN et autres variantes de ce genre, c'est plutôt le contrôle qui a le focus *dans* le datagrid qui les reçoit.
note : on peut aussi se brancher directement sur les événements du contrôle qui a le focus par l'entremise de DataGridColumnStyle... j'avais trouvé un exemple sur le web si ça t'intéresse, mais, au premier coup d'oeil, ça m'apparaissait moins propre et plus difficile d'entretien..
Bonjour,
Soit une datagrid comportant une combobox (comme décrit dans la FAQ du site de SyncFusion).
Dans la classe NoKeyUpCombo, on surcharge la procédure WndProc pour filtrer (ignorer) les éventuels appuis sur la touche TAB.
J'aimerais, dans cette procédure, récupérer l'appui simultané sur les touches ALT + flèche vers le bas. Ceci afin de pouvoir forcer la combobox à se dérouler (comme toute combobox qui se respecte).
J'ai essayé avec les messages WM_KEYDOWN et WM_SYSKEYDOWN mais je n'y arrive pas. Je sais qu'il faut traiter plusieurs messages successifs, mais je n'ai certainement pas tout compris.
Un petit coup de main m'arrangerais bien ! ___________ Bernard
Zoury
Salut Bernard! :O)
mais mon problème, c'est ALT+Down. mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne sais comment ...
oui en effet, c'est assez ch... :O/ je croyais que c'était plus simple désolé pour la moitier de réponse
essai la comparaison suivante : '*** Private Const WM_SYSKEYDOWN As Int32 = &H104 Private Const VK_DOWN As Int32 = &H28
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
If (msg.Msg = WM_SYSKEYDOWN) Then If (msg.WParam.ToInt32() = VK_DOWN) Then If (Control.ModifierKeys = Keys.Alt) Then Console.WriteLine("Bingo!") Return True End If End If End If
Return MyBase.ProcessCmdKey(msg, keyData) End Function '***
-- Cordialement Yanick MVP pour Visual Basic
Salut Bernard! :O)
mais mon problème, c'est ALT+Down.
mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne sais
comment ...
oui en effet, c'est assez ch... :O/
je croyais que c'était plus simple désolé pour la moitier de réponse
essai la comparaison suivante :
'***
Private Const WM_SYSKEYDOWN As Int32 = &H104
Private Const VK_DOWN As Int32 = &H28
Protected Overrides Function ProcessCmdKey(ByRef msg As
System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As
Boolean
If (msg.Msg = WM_SYSKEYDOWN) Then
If (msg.WParam.ToInt32() = VK_DOWN) Then
If (Control.ModifierKeys = Keys.Alt) Then
Console.WriteLine("Bingo!")
Return True
End If
End If
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function
'***
mais mon problème, c'est ALT+Down. mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne sais comment ...
oui en effet, c'est assez ch... :O/ je croyais que c'était plus simple désolé pour la moitier de réponse
essai la comparaison suivante : '*** Private Const WM_SYSKEYDOWN As Int32 = &H104 Private Const VK_DOWN As Int32 = &H28
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
If (msg.Msg = WM_SYSKEYDOWN) Then If (msg.WParam.ToInt32() = VK_DOWN) Then If (Control.ModifierKeys = Keys.Alt) Then Console.WriteLine("Bingo!") Return True End If End If End If
Return MyBase.ProcessCmdKey(msg, keyData) End Function '***
-- Cordialement Yanick MVP pour Visual Basic
Bernard
Exact, ça fonctionne.
Hélas, quand l'événement est déclenché, je ne sais plus dans quelle colonne je suis, ni si elle contient une combobox.
Décidément, la datagrid est vraiment un contrôle médiocre, ce machin est franchement inutilisable.
Si au moins on avait un datarepeater, je me ferais un contrôle perso.
Enfin, merci quand même, je vais essayer d'autres voies. ________ Bernard
Zoury wrote:
Salut Bernard! :O)
mais mon problème, c'est ALT+Down. mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne sais comment ...
oui en effet, c'est assez ch... :O/ je croyais que c'était plus simple désolé pour la moitier de réponse
essai la comparaison suivante : '*** Private Const WM_SYSKEYDOWN As Int32 = &H104 Private Const VK_DOWN As Int32 = &H28
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
If (msg.Msg = WM_SYSKEYDOWN) Then If (msg.WParam.ToInt32() = VK_DOWN) Then If (Control.ModifierKeys = Keys.Alt) Then Console.WriteLine("Bingo!") Return True End If End If End If
Return MyBase.ProcessCmdKey(msg, keyData) End Function '***
Exact, ça fonctionne.
Hélas, quand l'événement est déclenché, je ne sais plus dans quelle colonne
je suis, ni si elle contient une combobox.
Décidément, la datagrid est vraiment un contrôle médiocre, ce machin est
franchement inutilisable.
Si au moins on avait un datarepeater, je me ferais un contrôle perso.
Enfin, merci quand même, je vais essayer d'autres voies.
________
Bernard
Zoury wrote:
Salut Bernard! :O)
mais mon problème, c'est ALT+Down.
mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne
sais comment ...
oui en effet, c'est assez ch... :O/
je croyais que c'était plus simple désolé pour la moitier de réponse
essai la comparaison suivante :
'***
Private Const WM_SYSKEYDOWN As Int32 = &H104
Private Const VK_DOWN As Int32 = &H28
Protected Overrides Function ProcessCmdKey(ByRef msg As
System.Windows.Forms.Message, ByVal keyData As
System.Windows.Forms.Keys) As Boolean
If (msg.Msg = WM_SYSKEYDOWN) Then
If (msg.WParam.ToInt32() = VK_DOWN) Then
If (Control.ModifierKeys = Keys.Alt) Then
Console.WriteLine("Bingo!")
Return True
End If
End If
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function
'***
Hélas, quand l'événement est déclenché, je ne sais plus dans quelle colonne je suis, ni si elle contient une combobox.
Décidément, la datagrid est vraiment un contrôle médiocre, ce machin est franchement inutilisable.
Si au moins on avait un datarepeater, je me ferais un contrôle perso.
Enfin, merci quand même, je vais essayer d'autres voies. ________ Bernard
Zoury wrote:
Salut Bernard! :O)
mais mon problème, c'est ALT+Down. mais Keys.Alt.Down, ça n'existe pas...
Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne sais comment ...
oui en effet, c'est assez ch... :O/ je croyais que c'était plus simple désolé pour la moitier de réponse
essai la comparaison suivante : '*** Private Const WM_SYSKEYDOWN As Int32 = &H104 Private Const VK_DOWN As Int32 = &H28
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
If (msg.Msg = WM_SYSKEYDOWN) Then If (msg.WParam.ToInt32() = VK_DOWN) Then If (Control.ModifierKeys = Keys.Alt) Then Console.WriteLine("Bingo!") Return True End If End If End If
Return MyBase.ProcessCmdKey(msg, keyData) End Function '***
Zoury
Salut Bernard! :O)
je ne sais pas si la question est encore d'actualité, mais le DataGrid offre l'événement CurrentCellChanged se produit lorsque la propriété CurrentCell a été modifiée. Tu pourrais dans cette événement conserver les infos qui te sont utiles dans des variables "globales" (au niveau de la classe seulement). Ainsi lorsque ProcessCmdKey() se déclenche tu sauras qu'elle cellule/colonne avait le focus.
-- Cordialement Yanick MVP pour Visual Basic "Bernard" a écrit dans le message de news:
Exact, ça fonctionne.
Hélas, quand l'événement est déclenché, je ne sais plus dans quelle
colonne
je suis, ni si elle contient une combobox.
Décidément, la datagrid est vraiment un contrôle médiocre, ce machin est franchement inutilisable.
Si au moins on avait un datarepeater, je me ferais un contrôle perso.
Enfin, merci quand même, je vais essayer d'autres voies. ________ Bernard
Zoury wrote: > Salut Bernard! :O) > >> mais mon problème, c'est ALT+Down. >> mais Keys.Alt.Down, ça n'existe pas... >> >> Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne >> sais comment ... > > oui en effet, c'est assez ch... :O/ > je croyais que c'était plus simple désolé pour la moitier de réponse > > essai la comparaison suivante : > '*** > Private Const WM_SYSKEYDOWN As Int32 = &H104 > Private Const VK_DOWN As Int32 = &H28 > > Protected Overrides Function ProcessCmdKey(ByRef msg As > System.Windows.Forms.Message, ByVal keyData As > System.Windows.Forms.Keys) As Boolean > > If (msg.Msg = WM_SYSKEYDOWN) Then > If (msg.WParam.ToInt32() = VK_DOWN) Then > If (Control.ModifierKeys = Keys.Alt) Then > Console.WriteLine("Bingo!") > Return True > End If > End If > End If > > Return MyBase.ProcessCmdKey(msg, keyData) > End Function > '***
Salut Bernard! :O)
je ne sais pas si la question est encore d'actualité, mais le DataGrid offre
l'événement CurrentCellChanged se produit lorsque la propriété CurrentCell a
été modifiée. Tu pourrais dans cette événement conserver les infos qui te
sont utiles dans des variables "globales" (au niveau de la classe
seulement). Ainsi lorsque ProcessCmdKey() se déclenche tu sauras qu'elle
cellule/colonne avait le focus.
--
Cordialement
Yanick
MVP pour Visual Basic
"Bernard" <bernard.perdriaudcedex@octanie.com> a écrit dans le message de
news:O32RChN9EHA.2900@TK2MSFTNGP09.phx.gbl...
Exact, ça fonctionne.
Hélas, quand l'événement est déclenché, je ne sais plus dans quelle
colonne
je suis, ni si elle contient une combobox.
Décidément, la datagrid est vraiment un contrôle médiocre, ce machin est
franchement inutilisable.
Si au moins on avait un datarepeater, je me ferais un contrôle perso.
Enfin, merci quand même, je vais essayer d'autres voies.
________
Bernard
Zoury wrote:
> Salut Bernard! :O)
>
>> mais mon problème, c'est ALT+Down.
>> mais Keys.Alt.Down, ça n'existe pas...
>>
>> Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne
>> sais comment ...
>
> oui en effet, c'est assez ch... :O/
> je croyais que c'était plus simple désolé pour la moitier de réponse
>
> essai la comparaison suivante :
> '***
> Private Const WM_SYSKEYDOWN As Int32 = &H104
> Private Const VK_DOWN As Int32 = &H28
>
> Protected Overrides Function ProcessCmdKey(ByRef msg As
> System.Windows.Forms.Message, ByVal keyData As
> System.Windows.Forms.Keys) As Boolean
>
> If (msg.Msg = WM_SYSKEYDOWN) Then
> If (msg.WParam.ToInt32() = VK_DOWN) Then
> If (Control.ModifierKeys = Keys.Alt) Then
> Console.WriteLine("Bingo!")
> Return True
> End If
> End If
> End If
>
> Return MyBase.ProcessCmdKey(msg, keyData)
> End Function
> '***
je ne sais pas si la question est encore d'actualité, mais le DataGrid offre l'événement CurrentCellChanged se produit lorsque la propriété CurrentCell a été modifiée. Tu pourrais dans cette événement conserver les infos qui te sont utiles dans des variables "globales" (au niveau de la classe seulement). Ainsi lorsque ProcessCmdKey() se déclenche tu sauras qu'elle cellule/colonne avait le focus.
-- Cordialement Yanick MVP pour Visual Basic "Bernard" a écrit dans le message de news:
Exact, ça fonctionne.
Hélas, quand l'événement est déclenché, je ne sais plus dans quelle
colonne
je suis, ni si elle contient une combobox.
Décidément, la datagrid est vraiment un contrôle médiocre, ce machin est franchement inutilisable.
Si au moins on avait un datarepeater, je me ferais un contrôle perso.
Enfin, merci quand même, je vais essayer d'autres voies. ________ Bernard
Zoury wrote: > Salut Bernard! :O) > >> mais mon problème, c'est ALT+Down. >> mais Keys.Alt.Down, ça n'existe pas... >> >> Je soupçonne qu'il faille traiter deux fois l'évènement, mais je ne >> sais comment ... > > oui en effet, c'est assez ch... :O/ > je croyais que c'était plus simple désolé pour la moitier de réponse > > essai la comparaison suivante : > '*** > Private Const WM_SYSKEYDOWN As Int32 = &H104 > Private Const VK_DOWN As Int32 = &H28 > > Protected Overrides Function ProcessCmdKey(ByRef msg As > System.Windows.Forms.Message, ByVal keyData As > System.Windows.Forms.Keys) As Boolean > > If (msg.Msg = WM_SYSKEYDOWN) Then > If (msg.WParam.ToInt32() = VK_DOWN) Then > If (Control.ModifierKeys = Keys.Alt) Then > Console.WriteLine("Bingo!") > Return True > End If > End If > End If > > Return MyBase.ProcessCmdKey(msg, keyData) > End Function > '***
Bernard
Zoury wrote:
Salut Bernard! :O)
je ne sais pas si la question est encore d'actualité, mais le DataGrid offre l'événement CurrentCellChanged se produit lorsque la propriété CurrentCell a été modifiée. Tu pourrais dans cette événement conserver les infos qui te sont utiles dans des variables "globales" (au niveau de la classe seulement). Ainsi lorsque ProcessCmdKey() se déclenche tu sauras qu'elle cellule/colonne avait le focus.
Ce n'est plus d'actualité, je laisse tomber DataGrid au profit de ComponentOne TrueDbGrid Encore merci
Zoury wrote:
Salut Bernard! :O)
je ne sais pas si la question est encore d'actualité, mais le
DataGrid offre l'événement CurrentCellChanged se produit lorsque la
propriété CurrentCell a été modifiée. Tu pourrais dans cette
événement conserver les infos qui te sont utiles dans des variables
"globales" (au niveau de la classe seulement). Ainsi lorsque
ProcessCmdKey() se déclenche tu sauras qu'elle cellule/colonne avait
le focus.
Ce n'est plus d'actualité, je laisse tomber DataGrid au profit de
ComponentOne TrueDbGrid
Encore merci
je ne sais pas si la question est encore d'actualité, mais le DataGrid offre l'événement CurrentCellChanged se produit lorsque la propriété CurrentCell a été modifiée. Tu pourrais dans cette événement conserver les infos qui te sont utiles dans des variables "globales" (au niveau de la classe seulement). Ainsi lorsque ProcessCmdKey() se déclenche tu sauras qu'elle cellule/colonne avait le focus.
Ce n'est plus d'actualité, je laisse tomber DataGrid au profit de ComponentOne TrueDbGrid Encore merci