打开模态弹出窗口时,不显示asp.net下拉工具提示

时间:2012-07-09 06:46:30

标签: asp.net tooltip modal-dialog

我有一个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会弹出一个弹出窗口。关闭后,弹出工具提示对于下拉列表不可见。

请帮助解决此问题。

1 个答案:

答案 0 :(得分: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!!!!!!");
}