2010-10-07 2 views
0

J'utilise Infragistics Ultralistview pour afficher les données dans la liste qui contient 3 colonnes et 4-5 lignes (qui pourraient être jusqu'à 'n' lignes en fonction des données ajoutées). Lorsque je passe la souris sur la ligne pendant 2 secondes, je veux que d'autres informations sur cette ligne soient affichées dans un panneau tel que le contrôle. Comment faire ça? Faites-moi savoir si quelque chose d'autre est nécessaire de mon côté.Infragistics Ultralistview MouseHover Récupérer des informations utilisateur

+0

MISE À JOUR: Je veux événement MouseHover sur le point de ListView et non sur ListView –

Répondre

0

J'ai fait ce genre de chose avec un Combo en utilisant l'événement MouseEnterElement du contrôle et en traitant l'affichage des informations supplémentaires manuellement.

Pour mon projet en particulier, je référence les données d'un ValueListItem. Lorsque l'événement est déclenché, il déclenche un UltraWinToolTip pour cet élément déroulant.

Pour votre projet, vous pouvez attribuer vos données supplémentaires à la propriété Tag de chaque UltraListViewItem et capturer MouseEnterElement. Essayez quelque chose comme (vb):

Dim lst As UltraListView = CType(sender, UltraListView) 

If e.Element.GetContext().GetType() Is GetType(UltraListViewItem) Then 
    '-- Get the item in question 
    Dim li As UltraListViewItem = CType(e.Element.GetContext(), UltraListViewItem) 
    '-- Transpose your own data here 
    Dim dr As DataRow = CType(li.Tag, DataRow) 
    '-- Use a timer to delay the showing of the tip, or just set the text here 
End If 

Ensuite, nettoyer à l'aide MouseLeaveElement, faire quelque chose le long des lignes de:

If e.Element.GetContext().GetType() Is GetType(ValueListItem) Then 
    '-- Get rid of the text 
End If 
Questions connexes