我想用代码创建gridview.我的代码是:
GridView gdvList = new GridView();
gdvList.ID = "gdvList" ;
TemplateField tField = new TemplateField();
BoundField dateBF = new BoundField();
dateBF.DataField = "Date";
gdvList.Columns.Add(dateBF);
BoundField countResponse = new BoundField();
countResponse.DataField = "CountResponse";
gdvList.Columns.Add(countResponse);
ObjectDataSource ods = new ObjectDataSource();
ods.ID = "ods";
ods.TypeName = "Project.BLLQuestion";
ods.SelectMethod = "GetByGroupID";
ods.SelectParameters["GroupID"] = new Parameter("inGroupID", DbType.Int32, "0");
ods.DataBind();
gdvList.DataSource = ods;
gdvList.DataBind();
Run Code Online (Sandbox Code Playgroud)
此代码不起作用,以及如何添加TemplateField:
<asp:TemplateField ItemStyle-CssClass="GridItemTemplateField">
<ItemTemplate>
<a href="Question.aspx?id=<%# Eval("ID")%>"><%# Eval("Content").ToString().PadRight(140).Substring(0,140).TrimEnd()+"..." %></a>
</ItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)
怎么办呢?
DataSourceIDGrid 的属性,而不是DataSource.DataBind()的方法ObjectDataSource。ObjectDataSource和GridView都添加到 上Page。尝试这个:
ObjectDataSource ods = new ObjectDataSource();
ods.ID = "ods";
ods.TypeName = "Project.BLLQuestion";
ods.SelectMethod = "GetByGroupID";
ods.SelectParameters["GroupID"] = new Parameter("inGroupID", DbType.Int32, "0");
Page.Controls.Add(ods);
GridView gdvList = new GridView();
gdvList.ID = "gdvList" ;
gdvList.DataSourceID = "ods";
BoundField dateBF = new BoundField();
dateBF.DataField = "Date";
gdvList.Columns.Add(dateBF);
BoundField countResponse = new BoundField();
countResponse.DataField = "CountResponse";
gdvList.Columns.Add(countResponse);
Page.Controls.Add(gdvList);
gdvList.DataBind();
Run Code Online (Sandbox Code Playgroud)
根据你的第二个问题。尝试替换TemplateField为HyperLinkField. 点击此处了解详情。
| 归档时间: |
|
| 查看次数: |
847 次 |
| 最近记录: |