Ask a Question related to ASP.NET General, Design and Development.
-
Martine #1
object reference-error with programmatically loading user control
Hi there!
I have a problem with programmatically adding user controls to my
mobile webforms. If I load my usercontrol programmatically (in the
Page_Load), the object is instantiated, I have access to the methods
and properties from the Page_Load, no problem there. But as soon as I
want access to the user control from another procedure on the same
page, I get the next error message:
"Object reference not set to an instance of an object."
When I declaratively add the user control to my page, everything's ok,
I have access to the user control from the other procedure. In this
particular case, declaratively adding the user control is ok, but I
would really like to know what I am doing wrong in the first case.
Code is below. The last line of code, in Command_Login_Click is
causing the error. The exact same line works fine in Page_Load. Also,
it works fine in the Page_Load and Command_Login_Click when the
control is declaratively added.
Any help would be much appreciated!
seeyoubye, Martine.
---------------------------
CODE IN LOGIN.ASPX.CS:
protected tank.user newUser;
private void Page_Load(object sender, System.EventArgs e)
{
Control newUser = LoadControl("user.ascx");
Page.Controls.Add(newUser);
}
public void Command_Login_Click(object sender, System.EventArgs e)
{
testlabel.Text = ((user)newUser).Function.ToString();
}
CODE IN LOGIN.ASPX:
<%@ Reference Control="user.ascx" %>
CODE IN USER.ASCX.CS:
public abstract class user : System.Web.UI.UserControl
{
public String Function
{
get
{
return "test";
}
set
{
Session["User_Function"] = value;
}
}
}
Martine Guest
-
"Object reference not set" when loading a textbox in a user control
Hi All, I have a user control that shows name and address for a person in a text box. When the page hosting the control loads up, it calls a... -
Programmatically Get to User Control Properties
I created a User Control, called in an Asp.Net page. First, I've registered the control at the top of the page: <%@ Register TagPrefix="uc1"... -
Dynamically loading user control into Placeholder gives Object reference not set to an instance of an object
I've created user controls that contain listboxes that are dynamically populated from the database. In the html view of the user control... -
Custom Control Problem :: Object reference not set to an instance of an object
Hi All! I have the following Custom Control file... '########### WebUserControl1.ascx ############# <%@ Control Language="vb"... -
HELP! Error Loading ASPX : Object Reference not set to an instance object
Hello, When i run my aspx i get this weird error: System.NullReferenceException: Object reference not set to an instance of an object. at... -
Jay Warmack #2
Re: object reference-error with programmatically loading user control
Martine,
Something seems wrong here:
protected tank.user newUser;
private void Page_Load(object sender, System.EventArgs e)
{
Control newUser = LoadControl("user.ascx");
Page.Controls.Add(newUser);
}
You declare newUser as a protected object of type tank.user, this seems
right. But then in the Page_Load you declare newUser as an object of type
Control where you then assign it a reference to the object returned from
LoadControl. In this case the newUser object is now just a local reference
variable in the Page_Load method. So your reference in the Login method
will have a null object reference because you never assigned an object to
the protected reference variable. Make sense?
So what I would do is change your code to this:
protected tank.user newUser;
private void Page_Load(object sender, System.EventArgs e)
{
newUser = LoadControl("user.ascx");
Page.Controls.Add(newUser);
}
See if that works,
Jay Warmack, MCAD
IT Consultant
"Martine" <mvaniperen@poolmanager.nl> wrote in message
news:b7e235c8.0308050635.41db09f3@posting.google.c om...> Hi there!
>
> I have a problem with programmatically adding user controls to my
> mobile webforms. If I load my usercontrol programmatically (in the
> Page_Load), the object is instantiated, I have access to the methods
> and properties from the Page_Load, no problem there. But as soon as I
> want access to the user control from another procedure on the same
> page, I get the next error message:
>
> "Object reference not set to an instance of an object."
>
> When I declaratively add the user control to my page, everything's ok,
> I have access to the user control from the other procedure. In this
> particular case, declaratively adding the user control is ok, but I
> would really like to know what I am doing wrong in the first case.
>
> Code is below. The last line of code, in Command_Login_Click is
> causing the error. The exact same line works fine in Page_Load. Also,
> it works fine in the Page_Load and Command_Login_Click when the
> control is declaratively added.
>
> Any help would be much appreciated!
> seeyoubye, Martine.
> ---------------------------
> CODE IN LOGIN.ASPX.CS:
>
> protected tank.user newUser;
>
> private void Page_Load(object sender, System.EventArgs e)
> {
> Control newUser = LoadControl("user.ascx");
> Page.Controls.Add(newUser);
> }
>
> public void Command_Login_Click(object sender, System.EventArgs e)
> {
> testlabel.Text = ((user)newUser).Function.ToString();
> }
>
> CODE IN LOGIN.ASPX:
>
> <%@ Reference Control="user.ascx" %>
>
> CODE IN USER.ASCX.CS:
>
> public abstract class user : System.Web.UI.UserControl
> {
> public String Function
> {
> get
> {
> return "test";
> }
> set
> {
> Session["User_Function"] = value;
> }
> }
> }
Jay Warmack Guest



Reply With Quote

