我有两个datalist对象,外层的为main_dl,内层的为x_dl
我现在想让main_dl中的root, 决定x_dl中显示的news,该如何操作呢?<asp:datalist id=main_dl runat="server"DataSource="<%# main_DS %>">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"root") %>
<asp:datalist id=x_dl runat="server"DataSource="<%# x_DS %>">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"news") %>
</ItemTemplate>
</asp:datalist>
</ItemTemplate>
</asp:datalist>
谢谢前辈们!
我现在想让main_dl中的root, 决定x_dl中显示的news,该如何操作呢?<asp:datalist id=main_dl runat="server"DataSource="<%# main_DS %>">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"root") %>
<asp:datalist id=x_dl runat="server"DataSource="<%# x_DS %>">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"news") %>
</ItemTemplate>
</asp:datalist>
</ItemTemplate>
</asp:datalist>
谢谢前辈们!
解决方案 »
- asp.net 设置控件visible为false了,在javascript里面取不到ID了
- 请教高手们一个web自定义控件的问题。
- 高分求GridView分页问题(在线等)
- 请问怎么把word文档存入数据库
- 重复的快捷键是多少
- APS.NET 怎么才能与 JAVASCRIPT 实现中文的COOKIES通信?
- 一个asp.net页面能不能用多个*.cs文件啊?
- 求救啊!!……操作必须使用一个可更新的查询。
- 请问image在后台给Url赋值刷新的问题
- ASP.net怎么用C#把图片文件读出来在写到数据库中去? 谢谢
- 为什么控件的事件绑定会因为切换到设计视图出现错误而丢失的?
- 请教关于cookie的问题
那么在
private void Datalist1_SelectedIndexChanged(object sender, System.EventArgs e)
{
以下加入:
string aaa=((LinkButton)Datalist1.Items[Datalist1.SelectedIndex).FindControl("root所在的LinkButton的id")).Text;
sql="select * from news where root='"+aaa+"'
连接远程数据库获得DataSet2
DataList2.DataSouce=ds2;
DataList2.DataBind();
}
数据绑定”root"字段;
在以下:
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
生成dataset1;
DataList1.DataSouce=dataset1;
DataList1.DataBind();
}
在DataList1上点右键,选”属性“;选触电标记,在SelectedIndexChanged 右边双击:页面跳转如下: private void Datalist1_SelectedIndexChanged(object sender, System.EventArgs e)
{
以下加入:
string aaa=((LinkButton)Datalist1.Items[Datalist1.SelectedIndex).FindControl("root所在的LinkButton的id")).Text.ToString();
sql="select * from news where root='"+aaa+"'
连接远程数据库获得DataSet2
DataList2.DataSouce=ds2;
DataList2.DataBind();
}试一下!
<asp:datalist id=main_dl runat="server"DataSource="<%# main_DS %>">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"root") %>
<asp:datalist id=x_dl runat="server"DataSource="<%# FilterData(x_DS,DataBinder.Eval(Container.DataItem,"root")) %>">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"news") %>
</ItemTemplate>
</asp:datalist>
</ItemTemplate>
</asp:datalist>
DataView FilterData(DataSet ds, Object v)
{
//do work here, for example, use DataView
DataView dv = new DataView(ds.Tables[0]);
dv.RowFilter = "root = " + v.ToString();
return dv;
}
或参考
HOW TO:使用嵌套 Repeater 控件和 Visual C# .Net 显示分层数据
http://support.microsoft.com/kb/306154/zh-cn
就是你的ROOT行,另外放一个按钮,这样,当点击按钮的时候,我们可以通过此按钮的事件,获得当前行的ROOT值,并且,通过当前行,获取当前行里面嵌套的DATALIST控件,再通过ROOT值求取出DATALIST控件的数据集,绑定之后,显示即可.
FilterData(x_DS,DataBinder.Eval(Container.DataItem,"root"))的话,FilterData()
{ }
函数的参数时什么?我在函数里面要怎么转化为string类型呢?
谢谢前辈!
{ }
函数的参数时什么?我在函数里面要怎么转化为string类型呢?
2)DataSource="<%# FilterData(x_DS,DataBinder.Eval(Container.DataItem,"root")) %>">
提示错误,“服务器标记错误”
谢谢前辈
orDataSource='<%# FilterData(x_DS,DataBinder.Eval(Container.DataItem,"root").ToString()) %>'orDataSource='<%# FilterData(x_DS,(string)DataBinder.Eval(Container.DataItem,"root")) %>'
DataView FilterData(DataSet ds, string v)