Я работаю на многоцелевой странице и вместо того, чтобы добавлять несколько сеток на ту же страницу, мы хотели использовать один GridView на странице, а на странице_Init добавить нужные столбцы , и установите соответствующий DataSourceID.Динамические столбцы и источники данных с .NET Grid View
Чтобы сделать это, в aspx есть что-то вроде следующего: codebehind в Page_Init очень просто добавляет несколько столбцов, а затем устанавливает свойство DataSourceID GridView.
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.
Вам нужно будет опубликовать код привязки данных. Вероятно, это ошибка. – 2009-05-03 13:22:35