我有这样的gridview表......
<div>
<asp:GridView ID="GridView1" runat="server"
AllowSorting="true"
OnSorting="TaskGridView_Sorting" >
</asp:GridView>
</div>
我正在使用2个arraylists填充gridview,如下面的
DataTable taskTable = new DataTable("TaskList");
taskTable.Columns.Add("File Name");
taskTable.Columns.Add("Failure Count");
for (int i = 0; i < namesOfFiles.Count; i++)
{
DataRow tableRow = taskTable.NewRow();
tableRow["File Name"] = namesOfFiles[i];
tableRow["Failure Count"] = buFailureCount[i];
taskTable.Rows.Add(tableRow);
}
Session["TaskTable"] = taskTable;
GridView1.DataSource = Session["TaskTable"];
GridView1.DataBind();
所以现在当我运行这个时我不会在屏幕上看到任何内容,除非我将autogenerate列属性设置为true ....
有没有办法可以获取模板字段因为我知道很多方法来修改gridview中的数据,或者这些列在我的代码后面对齐的方式..现在标题和项目卡在左边缘...
感谢
答案 0 :(得分:1)
是的,您可以使用BoundField
元素轻松获取模板字段。还存在ItemTemplate
个元素,可以更好地控制网格视图。 MSDN's tutorial应该为您提供所有您需要知道的信息。
有效地,您的代码会出现如下代码:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="EmployeeID" DataSourceID="ObjectDataSource1">
<Columns>
<asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" />
<asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" />
<asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />
<asp:BoundField DataField="HireDate" HeaderText="HireDate" SortExpression="HireDate" />
</Columns>
</asp:GridView>
要为网格视图设置样式,您需要查看<RowStyle />
元素。