SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: Dieguinho. en Jueves 9 de Agosto de 2007, 15:41

Título: Tooltip En Listview
Publicado por: Dieguinho. en Jueves 9 de Agosto de 2007, 15:41
Hola, tengo una duda.
Como hago para que en un listview me muestre un tooltip cuando hago click en una fila??

Por ej. hago click en la fila dos del listview y que un tooltipo me muestre "Marco fila 2" y asi sucesivamente con todas las filas.
Probe algunas cosas pero no consigo que me salga.

Saludos.
Título: Re: Tooltip En Listview
Publicado por: Dieguinho. en Viernes 10 de Agosto de 2007, 21:42
Por la red encontre este codigo que parece que hace lo que necesito, pero la verdad mucho no lo entiendo, ahora voy a tratar de pasarlo a c# y ver de debaguearlo. Si alguno lo entiende mejor y me quiere dar una mano  le agradezco.

[CODE]\\\
Private m_HoveredItem As ListViewItem

Private Sub ListView1_MouseMove( _
    ByVal sender As Object, _
    ByVal e As MouseEventArgs _
) Handles ListView1.MouseMove
    Dim lvi As ListViewItem = Me.ListView1.GetItemAt(e.X, e.Y)
    If Not lvi Is m_HoveredItem Then
        m_HoveredItem = lvi
        If lvi Is Nothing Then
            Me.ToolTip1.SetToolTip(Me.ListView1, "")
        Else
            Me.ToolTip1.SetToolTip(Me.ListView1, lvi.Tag)
        End If
    End If
End Sub
///
Título: Re: Tooltip En Listview
Publicado por: Neopro en Viernes 10 de Agosto de 2007, 23:38
Puede que te sirva un poco mas así...

Está en Visual Basic y lo pasé a C#.

Código: Text
  1. //---------------------------------------------------------
  2. //TODO: Copiar estas asignaciones de evento en el constructor:
  3. // después de InitializeComponents.
  4. // Comprobar que los delegados usados son los correctos.
  5. //---------------------------------------------------------
  6. /*
  7. ListView1.MouseMove += new object(ListView1_MouseMove);
  8. */
  9. //---------------------------------------------------------
  10. private ListViewItem m_HoveredItem;
  11.  
  12. private void ListView1_MouseMove(object sender, MouseEventArgs e) {
  13. ListViewItem lvi = this.ListView1.GetItemAt(e.X, e.Y);
  14. if( ! lvi is m_HoveredItem ){
  15. m_HoveredItem = lvi;
  16. if( lvi == null ){
  17. this.ToolTip1.SetToolTip(this.ListView1, "");
  18. }else{
  19. this.ToolTip1.SetToolTip(this.ListView1, lvi.Tag);
  20. }
  21. }
  22. }
  23.  

Suerte.