我想将工具提示绑定到下拉列表项。 我的代码是
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;
}
}
}
}
}
它正在工作但是在选择任何项目后,工具提示将从所有项目列表中删除。
答案 0 :(得分:0)
您正在DataBound
上设置工具提示,当您未在加载或SelectedIndexChange
内绑定数据时,当您选择项目时,可能会发生2件事,SelectedIndexChange
事件触发然后Page_Load事件触发,我认为你对其中任何一个都没有约束力。这就是为什么tooltip
无法正常工作的原因。您应该将tooltip
代码放在一个函数中,并通过Page_Load或SelectedIndexChange
调用该函数,这样tooltip
将再次与DropDownList
绑定
希望它能解决您的问题。 此致!