DataList和DataGrid嵌套使用问题

huiqi2001 huiqi2001 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
在一个DataList里嵌套一个DataGrid,数据库用的是ORACLE
编译是通过的,一浏览ASPX就提示:
编译错误
编译器错误信息: CS0118: “System.Data.DataRowView”表示“类”,此处应为“变量”

ASPX代码:
<form id="Form1" method="post" runat="server">
<asp:DataList ID="ParentDataList" Runat="server" RepeatColumns="3">
<ItemTemplate>
<table>
<tr>
<td colspan="2"><%#DataBinder.Eval(Container.DataItem,"cardTypeName")%></td>
</tr>
<tr>
<td><img src="<%#DataBinder.Eval(Container.DataItem,"cardtypeurl")%>"></td>
<td>
<asp:DataGrid id="SonDataGrid" runat="server" AutoGenerateColumns="False" BorderColor="#33FF33" DataKeyField="cardTypeID" DataSource='<%# Ctype(Container.DataItem,DataRowView).CreateChildView("CardTypeRelation") %>'>
<Columns>
<asp:BoundColumn DataField="cardsubtypename"></asp:BoundColumn>
<asp:BoundColumn DataField="totalVB"></asp:BoundColumn>
</Columns>
</asp:DataGrid>
</td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>
</form>
CS代码:

public class CardTypeShow : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataList ParentDataList;
protected System.Data.DataSet objDs;
protected string listCout;

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
listCout="10";
objDs=new DataSet();
GetDate();
ParentDataList.DataSource=objDs.Tables["cardname"].DefaultView;
ParentDataList.DataBind();
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.ParentDataList.ItemDataBound += new System.Web.UI.WebControls.DataListItemEventHandler(this.ParentDataList_ItemDataBound);
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion

private void GetDate()
{
DatabasePool datepool=new DatabasePool();

string sSql = "select * from ( select * from vbcardtype) where rownum<"+listCout;
OracleDataAdapter objAdapter=new OracleDataAdapter(sSql,datepool.Open());
objAdapter.Fill(objDs,"cardname");
sSql="select * from vbcardsubtype where cardtypeid in ";
sSql+=" (select * from ( select cardtypeid from vbcardtype) where rownum<"+listCout+")";
objAdapter.SelectCommand.CommandText=sSql;
objAdapter.Fill(objDs,"cardlist");
datepool.Close();
datepool.Dispose();
DataColumn Parent = objDs.Tables["cardname"].Columns["cardTypeID"];
DataColumn Child = objDs.Tables["cardlist"].Columns["cardTypeID"];
objDs.Relations.Add("CardTypeRelation",Parent,Child);
}
}
private void ParentDataList_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{

}
///////////////////

那位大哥能告诉我是那里写的不对
...全文

相关推荐

DataGrid中嵌套使用Repeater.doc

DataGrid中嵌套使用Repeater DataGrid中嵌套使用Repeater DataGrid中嵌套使用Repeater

lt33854506

ASP.NET中DataGrid和DataList控件用法比较

DataGrid/DataList在ASP.NET中的重要性,想必就不用我再强调了,凡显示Table类型的数据,大多会使用这两个控件(当然,如果谁还像ASP那样写ASP.NET,那我也没有办法),所以,每个人可能都有自己的领悟,这篇文章,算是抛砖引玉,为大家做个铺垫。

sffgw

决定何时使用 DataGrid、DataList 或 Repeater(ASP.NET 技术文章)

摘要:了解 ASP.NET 用于显示数据的三个控件: DataGrid、DataList 和 Repeater。 这些控件中的每一个都有独特的特性以及相关的优点和缺点。 创建显示数据的 ASP.NET 应用程序时,为这项工作选择正确的控件非常重要。 正如将在本文中所看到的一样,选择使用 DataGrid、DataList 还是 Repeater,要权衡下面三个因素: 可用性、开发时间和性能。 (12 页打印页) 简介 自从出现了像 Microsoft Active Server Pages (ASP) 这样的简单且基于脚本的 Web 编程技术以来,Web 开发又有了很大的发展。 传统 ASP 

weixin_38721405

asp.net中DataList,DataGrid中的分页控件dll

DataList,DataGrid中的分页dll

hj88624

ASP.NET中GridView、DataList、DataGrid三个数据控件foreach遍历用法示例

主要介绍了ASP.NET中GridView、DataList、DataGrid三个数据控件foreach遍历用法,结合实例形式分析了GridView、DataList、DataGrid使用foreach及for语句进行数据遍历的具体使用方法,需要的朋友可以参考下

weixin_38646914
评论 9
收藏 已收藏
分享
返回顶部
huiqi2001
.NET社区 62,272 成员 668,968 内容