.aspx<asp:Panel ID="panelRoleList" runat="server"></asp:Panel>
<asp:Button ID="btnPowerSave" runat="server" Text="保存" onclick="btnPowerSave_Click" />.cs
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
  foreach (DataRow dr in dt_Category.Rows)
  {
     Panel pal1 = new Panel();
     pal1.GroupingText = "test1";     Panel pal2 = new Panel();
     pal2.GroupingText = "test2";     panelRoleList.Controls.Add(pal1);
     panelRoleList.Controls.Add(pal2);  }
}
}
protected void btnPowerSave_Click(object sender, EventArgs e)
{
  for (int i = 0; i < panelRoleList.Controls.Count; i++)
  {
     Panel pl = (Panel)panelRoleList.Controls[i];
  }
}问题:
Panel pl = (Panel)panelRoleList.Controls[i];
此处出现异常:无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.Panel”。调试发现:page_loads时 Panel.Controls Count 为2
          Click时Panel.Controls Count 为1个人认为可能是页面回发导致的,但具体是怎么导致的,我也不知道
还请各位了解的朋友不吝赐教,非常感谢。。
(本人菜鸟,勿喷。。)