ASP.NET在循环遍历XML节点时动态地将行添加到现有表中

时间:2015-03-26 11:51:23

标签: asp.net xml

我想要做的是用一个单元填充一个空表,每行的单元格数是4,所有单元格的数量是btnNode中的节点数

空表ID =“MainTable” 到目前为止我创建了这个,但似乎我在

中得到了一个错误

TableRowCollection rows = new TableRowCollection();

没有定义构造函数。在谷歌搜索并没有找到帮助来解决这个问题

这是我的代码:

private void linkBTN_Click(object sender, EventArgs e)
        {

                LinkButton btn = (LinkButton)sender;
                string text = btn.Text.ToString();
                XmlDocument clickDoc = new XmlDocument();
                clickDoc.Load(Server.MapPath("~/ProductShow.xml"));
                XmlNodeList btnNode = clickDoc.SelectNodes("products/" + text.ToString() + "/*");
                int count = btnNode.Count;

                TableRowCollection rows = new TableRowCollection();

                if (count < 4)
                {
                    TableRow row = new TableRow();

                    rows.Add(row);
                }
                else
                {
                    for (int i = 0; i < count / 4; i++)
                    {
                        TableRow row = new TableRow();
                        rows.Add(row);
                    }

                }

                int j = 1;
                foreach (XmlNode node in btnNode)
                {


                   //TableRow row = new TableRow();

                    TableCell cell = new TableCell();
                    cell.CssClass = "Cell";

                    LinkButton linkbtn = new LinkButton();
                    linkbtn.Text = node.InnerText;
                    linkbtn.Attributes.Add("runat", "server");
                    Image img = new Image();


                    cell.Controls.Add(linkbtn);
                    cell.Controls.Add(new LiteralControl("<br/>"));
                    cell.Controls.Add(img);

                    rows[j].Cells.Add(cell);





                    j++;

                }
                foreach (TableRow row in rows)
                {
                    MainTable.Rows.Add(row);

                }






        }

0 个答案:

没有答案