我自己编了一个用户控件WebUserControlReply,有一个网页PageTest,我想将这个用户控件WebUserControlReply现在在这个网页PageTest上! 
要求:
1.不是直接拖,而是写代码;
2.不要写在PageTest.aspx里,而是PageTest.aspx.cs。我想应该是写在这个方法里面。public partial class PageTest : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }
}谢谢各位!

解决方案 »

  1.   

    如果有必要写在代码中,可以参考:http://www.google.cn/search?complete=1&hl=zh-CN&newwindow=1&rls=com.microsoft%3A*%3AIE-SearchBox&rlz=1I7GGIJ&q=asp.net+placeholder+%22loadcontrol%22&meta=lr%3Dlang_zh-CN%7Clang_zh-TW&aq=f&oq=从你的描述上看不出有什么必要写代码。这么简单的代码让你的页面将来出错概率也会(相比用鼠标拖入)增加10倍。
      

  2.   

    使用LoadControl()动态加入UserControl 
      

  3.   

    直接定义就行啊  WebUserControlReply webUserCLR=(WebUserControlReplythis.Page.FindControl("自定义控件的ID");
      

  4.   

    动态往脚本里注入代码,就在CS文件里输出HTML代码(用户控件)
      

  5.   

    可是在下面的方法里根本打不出WebUserControlReply。这是命名空间的问题吗?可是看不到命名空间!都放在一个项目里面的,命名空间应该一样的吧!public partial class PageTest : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }
    }
      

  6.   

    下面是WebUserControlReply.aspx.cs全部内容,没有看到命名空间!using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;public partial class WebUserControlReply : System.Web.UI.UserControl
    {
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    }
      

  7.   

    知道了!要加一个命名空间using System.Drawing;
      

  8.   

    一开始WebUserControlReply根本打不出来,加上这句后的确可以了!但是之后把这句删除之后,还是可以的!
    哎!不知道什么原因!
      

  9.   

    要动态加载用户控件,也很简单的,先在你要加载用户控件的aspx页面上放一个Panel或者PlaceHolder,视你的情况而定,加载用户控件可以这样:for(int i=0;i<5;i++){
    myPlaceHolder.Controls.Add(LoadControl("用户控件的相对路径"));
    }=============================================>
    http://www.webdiyer.com
      

  10.   

    对的!我也觉得这样比较好!
    我现在刚学asp.net,还有很多地方有待于提高!
    谢谢大家!