私は多目的ページに取り組んでおり、同じページに複数のグリッドを追加するのではなく、単一の GridView をページに使用し、Page_Init で必要な列を追加し、それぞれの DataSourceID を設定します。
これを行うには、aspx に次のようなものがあります。Page_Init の分離コードは非常に単純で、いくつかの列を追加してから、GridView の DataSourceID プロパティを設定します。
ASPX:
<asp:GridView ID="gvDisplay" runat="server" AutoGenerateColumns="false" CellPadding="5"
width="100%" AllowPaging="true" PageSize="200" DataSourceID="wuProcessLogDataSource">
<RowStyle CssClass="RowStyle" />
<AlternatingRowStyle CssClass="AlternatingRowStyle" />
<HeaderStyle CssClass="HeaderStyle" />
</asp:GridView>
<asp:ObjectDataSource id="wuProcessLogDataSource" runat="server" EnablePaging="True"
SelectMethod="GetWUProcessLog" TypeName="Project.Objects.WUProcessLogDal"
SelectCountMethod="GetWUProcessLogTotalRecords">
<SelectParameters>
<asp:QueryStringParameter QueryStringField="w" DefaultValue="0" Name="workunitId" />
</SelectParameters>
</asp:ObjectDataSource>
オブジェクト データ ソースがそこにあり、最初のページ ロード トリガーとして問題なく動作します。しかし、ページ ボタンをクリックするとすぐにグリッドがページから消えますか? 何か案は?
私は DataGrid を使用するだけですが、HyperLinkColumn に必要な動的表示機能がありません。