Solved

How to overload the constructor of a user control in ASP.NET

Posted on 2012-12-27
7
453 Views
Last Modified: 2013-01-17
I've declared some objects on my ASP.NET web form that I would like to pass as parameters to the constructor of a user control so I can keep keep a reference to them on the main form.  Is it possible to overload the constructor of the user control for this purpose?

Thanks
0
Comment
Question by:obb-taurus
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
7 Comments
 
LVL 8

Expert Comment

by:Crashman
ID: 38723643
yes, it's possible...that's all what you need?
0
 

Author Comment

by:obb-taurus
ID: 38724486
Given that I was not all to successful in figuring this out, I would appreciate if you could tell me how.

Thanks
0
 
LVL 8

Expert Comment

by:Crashman
ID: 38724519
Overloading

public partial class UserControl1 : UserControl
    {
        //this is the contructor, without parameters;
        public UserControl1()
        {
            InitializeComponent();
        }

        public UserControl1(int field)
        {
            InitializeComponent();
            //do something with your field
        }

        public UserControl1(string field)
        {
            InitializeComponent();
            //do something with your field
        }
    }

Open in new window

all the anteriors are overloadings, constructor without parameter, constructor with one integer parameter, constructor with string parameter...all are valid because you can use overloading with variations in amount of parameters and tipe of them
0
Creating Instructional Tutorials  

For Any Use & On Any Platform

Contextual Guidance at the moment of need helps your employees/users adopt software o& achieve even the most complex tasks instantly. Boost knowledge retention, software adoption & employee engagement with easy solution.

 

Author Comment

by:obb-taurus
ID: 38724565
Sorry, I should have been more clear as to where I was experincing difficulty.  On the web form that is supposed to contain the user control, how do you instatiate the control and pass the parameters?

Thanks
0
 
LVL 8

Expert Comment

by:Crashman
ID: 38724587
UserControl1 x = new UserControl1(ParameterA,ParameterB,ParameterC)

Open in new window

can you post your code, or explain more clearly
0
 

Author Comment

by:obb-taurus
ID: 38724861
I'm a little confused by your response, unless I'm missing something, you can't instantiate a user control on a web form since it's added to the form as a tag in HTML.
0
 
LVL 6

Accepted Solution

by:
esolve earned 500 total points
ID: 38786212
What he means is that you can add a eg. literalcontrol to the page and then load the usercontrol like this:

<asp:PlaceHolder ID="phReportControl" runat="server"></asp:PlaceHolder>

 string sReportURL = "~/Modules/UserControlSample.ascx";
        Control toAdd = LoadControl(ResolveUrl(sReportURL));
        phReportControl.Controls.Add(toAdd);

If you have accessible properties on the control you can also set them here before loading the control.

There's no need really to use contructors since you're working in a web environment not windows.

Hope it helps!
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

ASP.Net to Oracle Connectivity Recently I had to develop an ASP.NET application connecting to an Oracle database.As I am doing it first time ,I had to solve several problems. This article will help to such developers  to develop an ASP.NET client…
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial
Suggested Courses

734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question