0

ajaxcontroltoolkit dropdownextender が関連付けられたテキストエリアと、ユーザーが選択できるオプションを含むグリッドビューを含むパネルがあります。

これらのアイテムのコードは次のとおりです。

    <asp:UpdatePanel ID="updPnlView" UpdateMode="Conditional" runat="server">
<ContentTemplate>
    <asp:TextBox ID="txtSiteName" runat="server" TextMode="MultiLine" Rows="4" Columns="33" ReadOnly="true" /></td>
    <ajaxToolkit:DropDownExtender runat="server" ID="popupdropdown" 
    DropDownControlID="pnlGrid" TargetControlID="txtSiteName" />
    <asp:Panel runat="server" ID="pnlGrid" Style="display: none; visibility: hidden" Height="300" ScrollBars="Vertical"> 
         <asp:GridView ID="gvSite" runat="server" AutoGenerateColumns="False" Width="100%" 
            DataKeyNames="ID,FullAddress" DataSourceID="odsSite" OnRowDataBound="gvSite_RowDataBound" 
            ShowFooter="false" ShowHeader="false" OnSelectedIndexChanged="gvSite_SelectedIndexChanged" >
            <Columns>
                <asp:CommandField ButtonType="Link" SelectText="Select" ShowSelectButton="true" ItemStyle-CssClass="HiddenColumn" />
                <asp:TemplateField >
                     <ItemTemplate>
                         <asp:Label ID="FullAddress" runat="server" Text='<%# Eval("FullAddress").ToString().Replace("\n", "<br/>") %>'></asp:Label>
                     </ItemTemplate>
                </asp:TemplateField>
                <asp:CheckBoxField DataField="DisabledFLG" ItemStyle-CssClass="HiddenColumn" />
            </Columns>
        </asp:GridView>
    </asp:Panel>
    <asp:ObjectDataSource ID="odsSite" runat="server" OldValuesParameterFormatString="original_{0}" 
        SelectMethod="GetList"
        TypeName="SOM.DCO.MOGWAI.Bll.SiteManager"
        onselecting="odsSite_Selecting" SortParameterName="SortExpression" 
        onselected="odsSite_Selected" >
        <SelectParameters>
            <asp:Parameter Name="myCriteria" Type="Object" />
            <asp:Parameter Name="myIDs" Type="Object" />
            <asp:Parameter Name="sortExpression" Type="String" />
            <asp:Parameter Name="bypassCache" Type="Boolean" />
        </SelectParameters>
    </asp:ObjectDataSource>
</ContentTemplate>
</asp:UpdatePanel>

このアイテムをテーブル (つまり<table><tr><td>THE CODE ABOVE</td></tr></table>) 内に配置すると、パネルは常に完全に開いて非表示になることはありません。また、TD 内の使用可能なスペースを完全に埋め、ページ上の他のすべてのテキストを画面の下に押し込みます。関連するコントロールをテーブルから取り出すと、期待どおりに機能します。Firefox と IE8 の両方でこの問題を再現しました。

何を与える?

4

1 に答える 1

0

さらにテストを重ねた結果、ドロップダウンエクステンダーによって参照されるコントロールがグリッドビューである場合にのみ、これが発生することを証明できました。

代わりにリストビュー コントロールに変更したところ、正常に動作しました。

これはバグだと思いますが、どこにも記録が見つかりません。

また、グリッドビューがドロップダウンエクステンダーによって参照されていないパネル内にあるときに同じ動作をするかどうかをテストしましたが、発生しませんでした。したがって、それは間違いなくドロップダウンエクステンダーに関連しています。

于 2010-02-10T13:44:22.373 に答える