Update page 'ToolTipController'
parent
9c895c0b81
commit
d033dd6447
@ -7,13 +7,59 @@ Le ToolTipController est un contrôle permettant de gérer l'affichage des infob
|
||||
En voici un apperçu : <img src="/git/KmWikiImage/DevExpress/tooltipcontroller_1.png" alt="ToolTip" width="300" />
|
||||
|
||||
##### Utilisation du ToolTipController avec un [[Ctrl_XtraGrid|Meta GridView]]
|
||||
1) Partie Designer
|
||||
1) **Partie Designer**
|
||||
1. Déposez via le designer VisualStudio un ToolTipController
|
||||
2. Allez dans l'onglet des propriétés de votre [[Ctrl_XtraGrid|Meta GridView]] afin d'assigner votre ToolTipController à la propriété **ToolTipController **.
|
||||
<img src="/git/KmWikiImage/DevExpress/tooltipcontroller_2.png" alt="ToolTip" width="700" />
|
||||
|
||||
2) **Partie code**
|
||||
L'étape précédente va permettre au ToolTipController de générer un événement lorsque la souris passera sur le [[Ctrl_XtraGrid|Meta GridView]].
|
||||
Nous allons maintenant voir comment gérer cette événement afin de définir le texte à afficher dans l'infobulle :
|
||||
``` vbnet
|
||||
Private Sub ToolTip_GetActiveObjectInfo(sender As Object, e As ToolTipControllerGetActiveObjectInfoEventArgs) Handles ToolTipController1.GetActiveObjectInfo
|
||||
Dim info As ToolTipControlInfo = Nothing
|
||||
If e.SelectedControl Is Ctrl_XtraGrid1 Then
|
||||
Try
|
||||
Dim view As GridView = CType(Ctrl_XtraGrid1.GetViewAt(e.ControlMousePosition), GridView)
|
||||
Dim hi As GridHitInfo = view.CalcHitInfo(e.ControlMousePosition)
|
||||
Dim ToolTipText_l As String = String.Empty
|
||||
' mettre la seconde codition et mettre en variable de classe le texte
|
||||
If Not hi.InRowCell Then Exit Sub
|
||||
|
||||
Dim viewInfo_l As GridViewInfo = CType(GridView1.GetViewInfo, GridViewInfo)
|
||||
If hi.Column.FieldName.Split("_"c).Count = 2 Then
|
||||
'On recupere la date et on l'affiche dans le tooltip
|
||||
Dim objdp_l As ObjectifDateEffetDataPack = TryCast(GridView1.GetDataRow(hi.RowHandle).Item(hi.Column.FieldName), ObjectifDateEffetDataPack)
|
||||
If objdp_l IsNot Nothing Then
|
||||
ToolTipText_l = "Date d'effet : " + objdp_l.DateEffet.ToString("dd/MM/yyyy")
|
||||
Else 'On la calcule :
|
||||
Dim year_l As Integer = 0
|
||||
If hi.Column.FieldName.Split("_"c)(0) = "AM1" Then
|
||||
year_l = (Annee_c.AddYears(-1)).Year
|
||||
ElseIf hi.Column.FieldName.Split("_"c)(0) = "A" Then
|
||||
year_l = Annee_c.Year
|
||||
ElseIf hi.Column.FieldName.Split("_"c)(0) = "AP1" Then
|
||||
year_l = (Annee_c.AddYears(1)).Year
|
||||
End If
|
||||
Dim date_l As Date = Utils.GetWeekStartDate(hi.Column.FieldName.Split("_"c)(1), year_l)
|
||||
ToolTipText_l = "Date d'effet : " + date_l.ToString("dd/MM/yyyy")
|
||||
End If
|
||||
|
||||
Dim Position_l As Object = hi.HitTest.ToString() + hi.RowHandle.ToString()
|
||||
info = New ToolTipControlInfo(Position_l, ToolTipText_l)
|
||||
ElseIf hi.Column.FieldName = "LIBELLE" Then
|
||||
ToolTipText_l = If(GridView1.GetDataRow(hi.RowHandle).Item("DESCRIPTION").ToString = "", "Pas de description", GridView1.GetDataRow(hi.RowHandle).Item("DESCRIPTION").ToString)
|
||||
Dim Position_l As Object = hi.HitTest.ToString() + hi.RowHandle.ToString()
|
||||
info = New ToolTipControlInfo(Position_l, ToolTipText_l)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
|
||||
Finally
|
||||
e.Info = info
|
||||
End Try
|
||||
End If
|
||||
End Sub
|
||||
```
|
||||
-----
|
||||
###### *Si vous avez des sugestions d'ajouts, de corrections, m'en faire part Merci*
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user