[C#] Tooltip beim Überfahren eines ListViewSubItem anzeigen

// auf dem Formular muss sich noch ein ToolTip namens "toolTip" befinden
// letztes SubItem unter der Maus
private ListViewItem.ListViewSubItem _currentsubitem = null;
// Offset für Tooltip
private const int TOOLTIPP_Y_OFFSET = 24;

private void ListView1_MouseMove(object sender, MouseEventArgs e)
{
    ListView lv = sender as ListView;

    if (lv != null)
    {
        ListViewHitTestInfo htInfo = lv.HitTest(e.X, e.Y);
        if (htInfo != null)
        {
            if (htInfo.Item != null && htInfo.SubItem != null)
            {
                // wenn Subitem in Spalte 2 (Index == 1) gewählt
                if (htInfo.Item.SubItems.IndexOf(htInfo.SubItem) == 1)
                {
                    if (_currentsubitem != htInfo.SubItem)
                    {
                        toolTip.Show(htInfo.Item.Tag as string, lv, e.X, e.Y + TOOLTIPP_Y_OFFSET);
                        _currentsubitem = htInfo.SubItem;
                    }
                }
                else
                {
                    toolTip.Hide(lv);
                    _currentsubitem = null;
                }
            }
            else
            {
                toolTip.Hide(lv);
                _currentsubitem = null;
            }
        }
    }
}

private void ListView1_MouseLeave(object sender, EventArgs e)
{
    ListView lv = sender as ListView;

    if (lv != null)
    {
        toolTip.Hide(lv);
        _currentsubitem = null;
    }
}