vb.net – 如何为Combobox中的每个项添加工具提示

我已经搜索了各种解决方案,但没有一个给我直接答案或者没有用vb.net编写.但我的情况是我有一个ComboBox,其中包含一些用户可以选择的项目.我想添加简单的工具提示,以便每个用户知道他或她正在选择什么.但是,在选择项目之前,工具提示不会显示.我希望工具提示显示鼠标悬停在每个项目上的时间.

以下是我的代码:

Private Sub VotingAgentComboBox_MouseHover(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles VotingAgentComboBox.MouseHover
    Dim VotingAgentToolTip As New ToolTip
    If VotingAgentComboBox.Text = "ISS" Then VotingAgentToolTip.SetToolTip(VotingAgentComboBox,"You selected ISS")
End Sub

解决方法

试试这个..
将工具提示控件添加到您的表单,并将此代码写入DrawItem事件到组合框控件

并且combobox的drawmode属性设置为OwnerDrawFixed

if (e.Index == -1) { return; }

            Point p = new Point(ComboBox1.Location.X + 120,ComboBox1.Location.Y + ComboBox1.Height + (30 + e.Index * 10));



            if ((e.State & DrawItemState.Selected) == DrawItemState.Selected)
            {

                toolTip.Show(ComboBox1.Items[e.Index].ToString(),this,p);

            }



            e.DrawBackground();

            e.Graphics.DrawString(ComboBox1.Items[e.Index].ToString(),e.Font,Brushes.Black,new Point(e.Bounds.X,e.Bounds.Y));

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...