【发布时间】:2014-02-18 21:21:07
【问题描述】:
所以我有一个绑定到 SQL 数据源存储过程的 gridview。存储过程返回一个数据透视表,其中许多列在运行时之前是未知的。因此,我需要自动生成列。
gridview 旨在允许类似 Excel 的数据更新。所以目标是将网格加载为文本框。我知道如果要在我的 aspx 页面上声明列,我可以创建模板列并以这种方式处理它们的可见性。
所以我相信我需要一种方法来以编程方式将所有列设置为模板字段(不知道列名),或者我需要发现我可以“翻转开关”并使所有内容都可编辑的方法。
提前致谢!
<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSourceExcelGridTest">
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSourceExcelGridTest" runat="server" ConnectionString="<%$ ConnectionStrings:WebAppsConnectionString %>" SelectCommand="spJobForecastingGetEmployeesByDepartmentAndProject_v1" SelectCommandType="StoredProcedure" UpdateCommand="spJobForecastingUpdateHours" UpdateCommandType="StoredProcedure">
<SelectParameters>
<asp:Parameter Name="DepartmentNumber" Type="String" DefaultValue="13211" />
<asp:Parameter Name="ProjectNumber" Type="String" DefaultValue="13211" />
<asp:Parameter Name="startDate" Type="DateTime" DefaultValue="2/21/2014" />
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="DepartmentNumber" Type="String" />
<asp:Parameter Name="ProjectNumber" Type="String" />
<asp:Parameter Name="Alias" Type="String" />
<asp:Parameter Name="WorkWeek" Type="DateTime" />
<asp:Parameter Name="WorkHours" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
【问题讨论】: