c# - 如何为 ListviewSubItem 设置工具提示

标签 c# controls tooltip listviewitem

我在详细信息 View 中有一个 ListView 控件(将列表显示为网格的 View )

    mListView.View = View.Details; 
    mListView.mLVSelectedObject.ShowItemToolTips = true;

    ListViewItem listViewItem = mListView.Items.Add(lValue.Name);
    listViewItem.ToolTipText = "AAAAAAAAAAAAAAAAA";

问题是工具提示仅在光标位于第一个 ListView 的列上方时显示,而在其余列上方则不显示。我想知道是否有办法让它看起来“轻松”?

最佳答案

经过一番研究。我已经通过这种方式解决了这个问题,但我仍然想知道是否有另一种方法可以避免 EventHandlers;

    ToolTip     mTooltip;
    Point mLastPos = new Point(-1, -1);

    private void listview_MouseMove(object sender, MouseEventArgs e)
    {
        ListViewHitTestInfo info    =   mLV.HitTest(e.X, e.Y);

        if (mTooltip == null)
            mTooltip = new ToolTip();

        if (mLastPos != e.Location)
        {
            if (info.Item != null && info.SubItem != null)
            {
                mTooltip.ToolTipTitle = info.Item.Text;
                mTooltip.Show(info.SubItem.Text, info.Item.ListView, e.X, e.Y, 20000);
            }
            else
            {
                mTooltip.SetToolTip(mLV, string.Empty);
            }
        }

        mLastPos = e.Location;
    }

关于c# - 如何为 ListviewSubItem 设置工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13069137/

相关文章:

c# - 字符串仅替换为特定的子字符串

c# - VS2013 : "VSP2340: Environment variables were not properly set" even when running from IDE

c# - 使用 protobuf-net 序列化 [Flags] 枚举时出现 InvalidOperationException

c# - 为什么我的 CheckBox.Checked 属性会重置?

winforms - 即使设置了 Dock 属性,也可以强制执行 Margin 吗?

带有不同消息的 java swing 工具提示

C# 如何从基类中的派生类获取特定类型的所有字段?

c# - 在 Windows 7 的代码中停止/启动服务

twitter-bootstrap - 如何更改图表 js 工具提示的 z-index?

java - 在 JTable 中鼠标悬停时创建信息面板?工具提示可能不够