0

我有一个 asp.net 下拉控件,其中添加了工具提示。它在鼠标悬停时工作正常。我在该页面中也有一个模态弹出窗口。当我打开和关闭模态弹出窗口时,不再显示下拉菜单中的工具提示。

下面是我的代码。

       <div class="col">
            <div class="labelname required">
                <asp:Label ID="lblsupplier" runat="server" Text="Supplier"></asp:Label>
            </div>
            <div class="labelvalue">
                <asp:DropDownList ID="DdlSupplier" TabIndex="11" runat="server" AutoPostBack="true"
                    CausesValidation="false" OnSelectedIndexChanged="DdlSupplier_SelectedIndexChanged">
                </asp:DropDownList>
                <asp:RequiredFieldValidator ID="reqSupplier" runat="server" ControlToValidate="DdlSupplier"
                    ValidationGroup="SubmitGroupMain" InitialValue="0" ErrorMessage="Please Select Supplier Name"
                    SetFocusOnError="true" Display="None"></asp:RequiredFieldValidator>
                <ajaxToolkit:ValidatorCalloutExtender ID="ValidatorCalloutExtender7" runat="Server"
                    TargetControlID="reqSupplier" HighlightCssClass="validatorCalloutHighlight">
                </ajaxToolkit:ValidatorCalloutExtender>
            </div>
            <asp:LinkButton runat="server" ID="lnkAddSupplier" CssClass="btnadd" ToolTip="New Supplier"
                OnClick="lnkAddSupplier_Click"></asp:LinkButton>
            <asp:Button runat="server" ID="popupshowAccount" Style="display: none" />
        </div>
    </div>

背后的代码

foreach (ListItem item in DdlSupplier.Items)
            {
                item.Attributes.Add("title", item.Text);
            }
            DdlSupplier.Attributes.Add("onmouseover","this.title=this.options[this.selectedIndex].title");

单击 lnkAddSupplier 会打开一个弹出窗口。关闭弹出工具提示后,下拉菜单不可见。

请帮助解决这个问题。

4

1 回答 1

0

属性不会保存在 Viewstate 中,这就是它们会在回发中消失的原因。自定义属性的情况类似。

这就是为什么我们必须使用 DropDownList Pre Render 事件来设置属性

protected void DropDownList1_PreRender(object sender, EventArgs e)
{
    foreach (ListItem item in DropDownList1.Items)
        item.Attributes.Add("title", "Something to test!!!!!!");
}
于 2012-07-17T08:49:52.850 回答