DataGrid显示主次关系(C#)


//========HTML页面
<asp:datagrid id="dl_fenlei" Width="442px" HorizontalAlign="Left" Font-Size="Larger" BorderStyle="Solid"
AllowSorting="True" BorderColor="White" ShowHeader="False" CellPadding="0" AutoGenerateColumns="False" BorderWidth="0px"
runat="server">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<table border="0" cellpadding="0" cellspacing="0" width="442">
<!-- fwtable fwsrc="????¨1??" fwbase="index_r4_c4.jpg" fwstyle="Dreamweaver" fwdocid = "71301705" fwnested="0" -->
<tr>
<td><img src="skin/spacer.gif" width="442" height="1" border="0" alt=""></td>
<td><img src="skin/spacer.gif" width="1" height="1" border="0" alt=""></td>
</tr>
<tr>
<td height="31" valign="middle" background="skin/index_r4_c4_r1_c1.jpg">&nbsp;&nbsp;>><%# DataBinder.Eval(Container.DataItem, "fenlei") %> <a href='morenews.aspx?fenlei=<%#DataBinder.Eval(Container.DataItem,"fenlei")%>'>更多新闻>></a>&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td background="skin/spacer.gif"></td>
</tr>
<tr>
<td background="skin/index_r4_c4_r2_c1.jpg">
<asp:DataGrid id=DataGrid2 BorderWidth="0" runat="server" AutoGenerateColumns="False" DataSource='<%# DataBinder.Eval(Container.DataItem,"fenlei_Relation") %>' Width="100%" ShowHeader="False" DataKeyField="fenleiid" AllowCustomPaging="True" PageSize="5" AllowPaging="True">
<PagerStyle Visible="False" Mode="NumericPages"></PagerStyle>
<HeaderStyle Font-Bold="True" ForeColor="#CC0066" BackColor="#E4E4E4" Width="100%"></HeaderStyle>
<Columns>
<asp:BoundColumn Visible="False" DataField="fenleiid" ReadOnly="True"></asp:BoundColumn>
<asp:TemplateColumn>
<HeaderStyle Width="100%"></HeaderStyle>
<ItemTemplate> <a href='ListView.aspx?newsid=<%#DataBinder.Eval(Container.DataItem,"id")%>' target=_blank> <%# DataBinder.Eval(Container.DataItem, "title") %> </a><font color="#ff0000">&nbsp;(已阅读<%#DataBinder.Eval(Container.DataItem,"counter")%>次)</font><font color="#c0c0c0"><%#DataBinder.Eval(Container.DataItem,"DateTime")%></font> </ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
</td>
<td><img src="skin/spacer.gif" width="1" height="3" border="0" alt=""></td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
//后台代码
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
SqlConnection cn=new SqlConnection(ConfigurationSettings.AppSettings["SqlCnString"]);
string cmdstr="select * from fenlei;select * from article order by datetime desc;select * from gonggao;select top 5 title,id,counter from article order by counter desc ";
cn.Open();
SqlDataAdapter da=new SqlDataAdapter(cmdstr,cn);
//创建并填充DataSet对象
DataSet ds=new DataSet();

da.Fill(ds);
//'设定表名字

ds.Tables[0].TableName="fenlei";
ds.Tables[1].TableName="article";
ds.Tables[2].TableName="gonggao";
ds.Tables[3].TableName="hot";
//在基于fenleiid字段的两个表之间建立父子关系
DataColumn Parent=ds.Tables["fenlei"].Columns["fenleiid"];
DataColumn Child=ds.Tables["article"].Columns["fenleiid"];
DataRelation fenlei_Relation=new DataRelation("fenlei_Relation", Parent, Child,false);
//为DataSet添加关系
ds.Relations.Add(fenlei_Relation);
//把DataSet绑定到fenlei,gonggao表
dl_fenlei.DataSource=ds.Tables["fenlei"].DefaultView;
dl_fenlei.DataBind();
gonggao.DataSource=ds.Tables["gonggao"].DefaultView;
gonggao.DataBind();
hot.DataSource=ds.Tables["hot"].DefaultView;
hot.DataBind();
cn.Close();
}

优质内容筛选与推荐>>
1、Nuts陈学习计划
2、Flex中实现Application未初始化前加载配置内容
3、如果编程这么简单,你要怎么想。有图
4、[记录]明天开始东软实训
5、大规模Hadoop集群实践:腾讯分布式数据仓库(TDW)


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号