datalist嵌套及其一个注意点。

来源:互联网 发布:mac系统使用方法 编辑:程序博客网 时间:2024/05/21 09:44

前台代码<asp:DataList ID="DataList1" runat="server"         onitemdatabound="DataList1_ItemDataBound">        <ItemTemplate>            <asp:Label runat="server" ID="L" Text='<%#DataBinder.Eval(Container.DataItem,"kechengID") %>'></asp:Label>            <%#DataBinder.Eval(Container.DataItem,"kcBiaoti") %>            <br />            <asp:DataList runat="server" ID="DataList2">                <ItemTemplate>                                          <%#DataBinder.Eval(Container.DataItem,"wkBiaoti") %>                    <br />                </ItemTemplate>            </asp:DataList>        </ItemTemplate>    </asp:DataList>

后台代码

  protected void Page_Load(object sender, EventArgs e)        {            string sqlSel = "select * from Lcts ";            DataList1.DataSource = operateData.getRows(sqlSel);            DataList1.DataBind();        }        protected void DataList1_DataBinding(object sender, DataListItemEventArgs e)        {                   }        protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)        {            DataList dl = (DataList)e.Item.FindControl("DataList2");            Label l = (Label)e.Item.FindControl("L");            //SQL sql = new SQL("select * from tblsorts where parentid=" + l.Text);            string sqlSel = "select * from kechengXIAweikes where kechengID= " + l.Text;            //SqlDataAdapter sda = .GetSqlDataAdapter();            //DataSet ds = new DataSet();            //sda.Fill(ds, "table");            dl.DataSource = operateData.getRows(sqlSel); ;            dl.DataBind();        }

注意点:父datalist和子datalist读取的数据表的来源可以不同。


其他datalist嵌套代码也有很多,这是我应用最快的。学这个首先是搞懂它的原理,其次才是实现。


二层的和三层的代码网上也有,请自行百度和csdn吧。


评论的注意事项:

四个步骤,1.点击按钮评论 2. 显示评论 3. 回复评论 4.显示评论的回复。

第三步,需要注意,需要先显示评论区,其次评论完以后可以隐藏


第四步,可以用DataList1_ItemDataBound尽心绑定,这是嵌套的核心。 但是目前这个思路遇到个问题就是无法异步更新回复的内容。








0 0
原创粉丝点击