0

私は、GridView を含む ajax モーダル ポップアップを持っている asp.net c# Web アプリケーションを作成しています。ModalPopUp の高さは、GridView の高さに応じて自動的に設定されます (GridView 内のデータに依存します)。今私が欲しいのは、Popupの高さがその親ページよりも大きくなったとき、その時にPopUpの高さをリセットして(親ページよりも小さい)、スクロールバーを設定したいということです。これはすべて、クライアント側で動的に行いたいことです。このために、次のコードを使用しています

    function ShowPopUp_AllPrices() {          
    $find('popupAllPrices').show();       
    return false;   
    }



<asp:LinkButton ID="lnkProduct" runat="server"></asp:LinkButton>
<ajaxToolkit:ModalPopupExtender ID="ModalPopupProduct" runat="server" BehaviorID="popupProduct"
    TargetControlID="lnkProduct" PopupControlID="pnlAddProduct"    BackgroundCssClass="modalBackground" />
<asp:Panel ID="pnlAddProduct" runat="server" Style="display: none; width: 80%; font-size: 8pt;">

 <div>
        <asp:LinkButton ID="lnkAllPrices" runat="server"></asp:LinkButton>
        <ajaxToolkit:ModalPopupExtender ID="ModalPopupAllPrices" runat="server" BehaviorID="popupAllPrices"
            TargetControlID="lnkAllPrices" PopupControlID="pnlAllPrices" BackgroundCssClass="modalBackground"  />
        <asp:Panel ID="pnlAllPrices" runat="server" Style="display: none; width: 30%; font-size: 8pt; ">
      <div class="art-blockcontent">
                        <div class="art-BlockContent-body">
                            <%--<div style="overflow: auto; width: 100%; height: 200px;">--%>
                            <table width="100%">
                                <tr>
                                    <td align="center">
                                        <div style="overflow: auto; width: 100%; "><%--height: 200px;--%>
                                            <asp:GridView ID="grvPriceTypes2" runat="server" AutoGenerateColumns="False"      AllowSorting="true"
                                                EmptyDataText="No Data Found." Width="90%" CssClass="cssGrid" BackColor="WhiteSmoke"
                                                PagerStyle-HorizontalAlign="Center" OnRowCommand="grvPriceTypes2_OnRowCommand"
                                                Enabled="false">
                                                <Columns>
                                                    <asp:BoundField DataField="StartDate" HeaderText="Start Date"      DataFormatString="{0:MM/dd/yyyy}"
                                                        ItemStyle-HorizontalAlign="Center" ItemStyle-Width="25%" />
                                                    <asp:BoundField DataField="EndDate" HeaderText="End Date"     DataFormatString="{0:MM/dd/yyyy}"
                                                        ItemStyle-HorizontalAlign="Center" ItemStyle-Width="20%" />
                                                    <asp:BoundField DataField="PriceType" HeaderText="Type"      ItemStyle-HorizontalAlign="Center"
                                                        ItemStyle-Width="15%" />
                                                    <asp:BoundField DataField="Price" HeaderText="Price"      ItemStyle-HorizontalAlign="right"
                                                        ItemStyle-Width="20%" />
                                                </Columns>
                                            </asp:GridView>
                                        </div>
                                    </td>
                                </tr>
                            </table>                                                            
                        </div>
                    </div>
  </asp:Panel>
    </div>
 </asp:Panel>

そのモーダル ポップアップの高さとスクロール バーを設定するには、ShowPopUp_AllPrices() 関数にどのコードを記述すればよいか教えてください。

4

2 に答える 2

2

私の問題は解決しました。Grid.Like のすぐ上にある div タグの「max-height」スタイル属性を設定しました。

<div style="overflow: auto;max-height:400px; width: 100%;" >

style 属性に "max-height" を指定することで、ポップの高さが 400px を超えると、そのポップアップ内にスクロール バーが自動的に表示されます。

于 2012-09-20T06:04:51.743 に答える
0
divWindow.dialog({
    autoOpen: true,                                   
    title: "Menu Items",
    draggable: true,
    resizable: false,
    modal: true,
    width:($(window).width() * .9),
    height: ($(window).height() * .9),
    dialogClass: 'dialogFixed',
    open: function(event, ui) 
});
于 2012-09-18T14:21:12.690 に答える