如何在asp.net c下拉列表中绑定工具提示#

时间:2017-02-01 08:50:52

标签: c# asp.net

我想将工具提示绑定到下拉列表项。 我的代码是

protected void ddl_DataBound(object sender, EventArgs e)
{
    if (ViewState["HeadToolTip"] != null)
    {
        DataTable dt = ViewState["HeadToolTip"] as DataTable;
        DropDownList ddl = sender as DropDownList;
        if (ddl != null)
        {
            foreach (ListItem li in ddl.Items)
            {

                DataRow drow = dt.Rows.Cast<DataRow>().FirstOrDefault(x => x.Field<string>("HeadCode") == li.Value.ToString());
                if (drow != null)
                {
                    li.Attributes["title"] = drow["ToolTip"].ToString();// li.Text;
                }
            }
        }
    }
}

它正在工作但是在选择任何项目后,工具提示将从所有项目列表中删除。

1 个答案:

答案 0 :(得分:0)

您正在DataBound上设置工具提示,当您未在加载或SelectedIndexChange内绑定数据时,当您选择项目时,可能会发生2件事,SelectedIndexChange事件触发然后Page_Load事件触发,我认为你对其中任何一个都没有约束力。这就是为什么tooltip无法正常工作的原因。您应该将tooltip代码放在一个函数中,并通过Page_Load或SelectedIndexChange调用该函数,这样tooltip将再次与DropDownList绑定

希望它能解决您的问题。 此致!