Как да видите елементи в ListBox, по-дълги от ширината на контролата

Имам поле със списък, което има определени размери
Някои от елементите са по-големи от ширината на контролата ListBox.
Когато прекарам мишката върху тези елементи, искам да видя цялото име. Използвам vb.net


person Lefteris Gkinis    schedule 13.11.2013    source източник
comment
Искате да кажете, че искате подсказка, която да показва пълната текстова стойност на елемента?   -  person nstosic    schedule 13.11.2013


Отговори (1)


Опитайте тази:

Private Sub ListBox1_MouseMove (ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListBox1.MouseMove
    Dim ListMousePosition As Point = Me.ListBox1.PointToClient(Me.MousePosition)
    Dim itemIndex As Integer = Me.ListBox1.IndexFromPoint(ListMousePosition)
    If itemIndex > -1 Then
        Dim s As String = Me.ListBox1.Items(itemIndex).ToString()
        Dim g As Graphics = Me.ListBox1.CreateGraphics()
        If g.MeasureString(s, Me.ListBox1.Font).Width > Me.ListBox1.ClientRectangle.Width Then
        Me.ToolTip.SetToolTip(Me.ListBox1, s)
        else
        Me.ToolTip.SetToolTip(Me.ListBox, "")
        End If
        g.Dispose()
    End If
End Sub
person nstosic    schedule 13.11.2013
comment
Добре, успях да играя с него. Фантастично е.. дори предизвиква мигане!!! Не мога да разбера защо е така!! - person Lefteris Gkinis; 14.11.2013