3

我有一个下拉列表,我想为下拉列表项添加工具提示。我尝试使用以下代码,但它不起作用;

    for(int d=0;d<drpID.Items.Count;d++)
    {
        drpID.Items[d].Attributes.Add("title", drpID.Items[d].Value);

    }

谁可以帮我这个事?

4

6 回答 6

6

试试这样;

public void Tooltip(ListControl lc)
{
    for (int d = 0; d < lc.Items.Count; d++)
    {
        lc.Items[d].Attributes.Add("title", lc.Items[d].Text);
    }
}

您应该将.Text属性用于工具提示,而不是用于.Value.

查看此链接: http: //www.dotnetspider.com/resources/5099-Tool-tip-for-DropDownList-ASP-NET.aspx

于 2013-04-08T06:19:56.770 回答
4

试试下面的代码:

foreach (ListItem item in drpID.Items)
{
item.Attributes.Add("Title", item.Text);
}
于 2013-04-08T06:21:25.767 回答
2

你应该试试这个

 protected void ddlDetails_DataBound(object sender, EventArgs e)
{
    DropDownList ddl = sender as DropDownList;
    if(ddl!=null)
  {
    foreach (ListItem li in ddl.Items)
    {
      li.Attributes["title"] = li.Text;
    } 
  }
}

在此处输入图像描述

于 2013-04-08T06:27:48.767 回答
1

我知道这个线程是关于数据绑定控件的,但是在极少数情况下,您实际上在 aspx 页面中硬编码了 ListItem 值,我只是添加了一个

<asp:ListItem Id="liNumberOne" Runat="server" title="My nifty help text" />

属性到 ListItem 标记本身,它工作得很好。当然,我收到了关于它不是有效属性的投诉,但是当页面呈现时,它出现了,然后它是一个有效属性。

于 2013-07-23T18:22:52.633 回答
1

我只需要在以编程方式填充的 DropDownList 上实现一个工具提示。我发现 title 属性被自动设置为 Text 属性,我无法覆盖它,即使在 PreRender 中也是如此。

该线程上的任何建议都不起作用,我最终被迫使用 jQuery 方法。

创建列表项时,我使用工具提示文本设置了自定义属性

    ListItem item = new ListItem("Name", "Value");
    item.Attributes.Add("tooltip", tooltip);
    ddl.Items.Add(item);

然后使用启动脚本触发以下方法

function SetTooltip() {
    jQuery('#<%=ddl.ClientID %> option').each(
        function () {
            jQuery(this).attr('title', jQuery(this).attr('tooltip'));
        }
    );
}

真不是。但它有效。

于 2014-03-21T03:14:19.777 回答
0
        foreach (ToolStripItem item in yourToolStripName.DropDownItems)
        {
            item.ToolTipText = "tool strip item message";
        }
于 2018-06-09T17:31:06.950 回答