我的用户控件有问题。在里面,我有一个复选框控件。我想立即创建该用户控件并将其插入到asp:table控件中。ASP.NET用户控件 - 空引用?
MyControl pp = new MyControl();
pp.pageNameCb.Text = "lorem";
TableCell tc = new TableCell();
tc.Controls.Add(pp);
table.Rows[0].Cells.Add(tc);
但是,该pageNameCb
为空,即使我手动创建它的实例,没有显示在我的表。为什么?
这里是我的代码:
<asp:View ID="new_role_view" runat="server">
<asp:Table ID="table1" runat="server">
<asp:TableRow ID="TableRow1" runat="server">
<asp:TableCell ID="TableCell1" runat="server">
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</asp:View>
然后,如果我改变看法是积极的,我创建了我的控制:
MyControl pp = new MyControl();
table.Rows[0].Cells[0].Controls.Add(pp);
的MyControl的Page_Init:
protected void Page_Init(object sender, EventArgs e)
{
if (pageNameCb == null)
pageNameCb = new CheckBox();
pageNameCb.Text = "works";
}
,仍然,什么也没有显示
你执行这个代码?尝试在创建后设置pp的ID。 –
您是否遇到异常? – atoMerz
检查生成的HTML并查看表格中是否真的添加了复选框 – Rahul