首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

?求救,一个VS05中ASP.NET用户控件的有关问题,高手

2012-01-10 
?????求救,一个VS05中ASP.NET用户控件的问题,在线等高手下面是一个用户控件new_mov.ascx,里面包含两个控件

?????求救,一个VS05中ASP.NET用户控件的问题,在线等高手
下面是一个用户控件new_mov.ascx,里面包含两个控件Image   Image1和HyperLink   HyperLink1
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   new_mov   :   System.Web.UI.UserControl
{
     
        private   string   M_id=String.Empty   ;
        private   string   M_imageurl   =   String.Empty;
        private   string   M_movname   =   String.Empty;

        //空构造
        public   new_mov()
        {   }
        //构造2
        public   new_mov(string   tid,string   timageurl,string   tmovname)
        {
                M_id   =   tid;
                M_imageurl   =   timageurl;
                M_movname   =   tmovname;
                       
        }
        #region     控件属性
        public   string   id
        {
                set   {   M_id   =   value;   }
                get   {   return   M_id;   }
        }
        public   string   imageurl
        {
                set   {   M_imageurl   =   value;   }
                get   {   return   M_imageurl;   }
        }
        public   string   name
        {
                set   {   M_movname   =   value;   }
                get   {   return   M_movname;   }
        }
        #endregion
        protected   void   Page_Load(object   sender,   EventArgs   e)
        {
                Image1.ImageUrl   =   this.imageurl;
                HyperLink1.NavigateUrl   =   this.id;
                HyperLink1.Text   =   this.name;
               
        }
 
}
下面是在Default.aspx中引用它,目的是动态生成控件
Default.aspx源

<%@   Page   Language= "C# "   AutoEventWireup= "true "     CodeFile= "Default.aspx.cs "   Inherits= "_Default "   %>
<%@   Reference   VirtualPath= "~/new_mov.ascx "     %>


<!DOCTYPE   html   PUBLIC   "-//W3C//DTD   XHTML   1.0   Transitional//EN "   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">

<html   xmlns= "http://www.w3.org/1999/xhtml "   >
<head   runat= "server ">
        <title> 无标题页 </title>
</head>
<body>
        <form   id= "form1 "   runat= "server ">
        <div>
                <asp:Label   ID= "Label1 "   runat= "server "   Text= "Label "> </asp:Label> </div>
        </form>
</body>
</html>
代码页
using   System;
using   System.Data;
using   System.Configuration;
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   _Default   :   System.Web.UI.Page  
{
        protected   void   Page_Load(object   sender,   EventArgs   e)
        {

                new_mov   aa   =   new   new_mov( "100 ",   "a.jpg ",   "test ");
                Page.Controls.Add(aa);


        }
}
运行出现
未将对象引用设置到对象的实例。  
说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。  

异常详细信息:   System.NullReferenceException:   未将对象引用设置到对象的实例。

源错误:  


行   50:           protected   void   Page_Load(object   sender,   EventArgs   e)
行   51:           {
行   52:                   Image1.ImageUrl   =   "this.imageurl ";
行   53:                   HyperLink1.NavigateUrl   =   "this.id ";
行   54:                   HyperLink1.Text   =   "this.name ";
 

源文件:   d:\WebSitetest\new_mov.ascx.cs         行:   52  

调式中发现用户控件中的两个控件,Image1和HyperLink1都为null




[解决办法]
用户控件不是这样加载的
[解决办法]
学习~~~~~~~~~~`
[解决办法]
学习

热点排行