不使用嵌套Gridview在单个Gridview中显示带控件的嵌套行

时间:2014-03-07 06:52:42

标签: asp.net gridview

我想在gridview中显示包含Web控件的嵌套行,当单击gridview可见行时,将显示这些行。请帮帮我......

提前致谢

1 个答案:

答案 0 :(得分:0)

你试过转发器控制吗?

使用转发器,您可以定义自定义标题,项目和页脚模板,当然您可以在项目模板中定义自定义控件/嵌套行。

点击How to use Repeater control

您也可以通过迭代生成的数据源来尝试使用文字控件来构建运行时Html表结构[嵌套行]

以下示例:

foreach (DataRow drTR in dtTemp.Rows)
            {

                #region "TR Building"

                sb.Append("<tr>");
                sb.Append("<td>");
                sb.Append(drTR["SKU"].ToString());
                sb.Append("</td>");
                sb.Append("<td>");
                sb.Append(drTR["SKUDESC1"].ToString());
                sb.Append("</td>");
                sb.Append("<td>");
if(dtYY.Rows.Count > 0)
{
sb.Append("<table>");
}
foreach(DataRow drX in dtYY.Rows)
{
                sb.Append("<td>");
                sb.Append(drTR["Item1"].ToString());
                sb.Append("</td>");
                sb.Append("<td>");
                sb.Append(drTR["Item2"].ToString());
                sb.Append("</td>");

                sb.Append("<td>");
                sb.Append(drTR["Item3"].ToString());
                sb.Append("</td>");


}
sb.Append("</table>");
}
                sb.Append("</td>");                   
                sb.Append("</tr>");
} 
ltData.Text = sb.ToString();