1、如何在后台代码中设置和获取用户控件中的子控件的属性?
2、如何在后台设置和获取用户控件本身的属性?
我在以前的一些帖子中也看到类似的问题和回复,大多使在前台页面实现。
而在后台实现的方法则鲜有提及……
欢迎大家就此做一下讨论,并产生出一个较好的solution :)
请各位高手,不吝赐教!
8 个解决方案
#1
供大家参考
“我在用户控件中有一个公用的属性和公用的方法,在调用他的页面中可以访问,但是在后置代码文件中确无法访问到这个用户控件。”
http://expert.csdn.net/Expert/topic/1989/1989975.xml?temp=.6281244
“我在用户控件中有一个公用的属性和公用的方法,在调用他的页面中可以访问,但是在后置代码文件中确无法访问到这个用户控件。”
http://expert.csdn.net/Expert/topic/1989/1989975.xml?temp=.6281244
#2
这个别人不都有写的么,定义一下不就可以了?
protected YouUserControlClass control1;
protected YouUserControlClass control1;
#3
把属性嵌套起来嘛~
很简单的~
我现在的项目用户控件不知道嵌套了多少层。
很简单的~
我现在的项目用户控件不知道嵌套了多少层。
#4
有没有相应的例子可供参考?(40分奉送 ^_^)
#5
crodling(蓝风) ( ) 说得对
#6
>>>1、如何在后台代码中设置和获取用户控件中的子控件的属性?
add public properties/methods in your codebehind class for your usercontrol and declare in your page class:
protected YourUserControlCodeBehindClass YourUserControlID;
..
if you don't have a codebehind class, you can always do
UserControl c = (UserControl)FindControl("YourUserControlID");
TextBox tb = (TextBox) c.FindControl("YourTextBoxIDInYourUserControl);
tb.Text = "123";
>>>2、如何在后台设置和获取用户控件本身的属性?
if you have a codebehind class for your usercontrol, you can do
protected YourUserControlCodeBehindClass YourUserControlID;
YourUserControlID.Property1 = "123";
otherwise, you have to use Reflection
add public properties/methods in your codebehind class for your usercontrol and declare in your page class:
protected YourUserControlCodeBehindClass YourUserControlID;
..
if you don't have a codebehind class, you can always do
UserControl c = (UserControl)FindControl("YourUserControlID");
TextBox tb = (TextBox) c.FindControl("YourTextBoxIDInYourUserControl);
tb.Text = "123";
>>>2、如何在后台设置和获取用户控件本身的属性?
if you have a codebehind class for your usercontrol, you can do
protected YourUserControlCodeBehindClass YourUserControlID;
YourUserControlID.Property1 = "123";
otherwise, you have to use Reflection
#7
谢谢 saucer(思归)
我试了一下,你的方法可以。
此问题基本得到了解决。
菜鸟还有些疑问,Usercontrol的功能是不是有些太有限了一点?与内嵌组件相比,无论属性还是方法似乎都不够强大 -_-
我试了一下,你的方法可以。
此问题基本得到了解决。
菜鸟还有些疑问,Usercontrol的功能是不是有些太有限了一点?与内嵌组件相比,无论属性还是方法似乎都不够强大 -_-
#8
顾名思义,UserControl是以界面为主的,但你可以在你的UserControl加属性/方法/事件,因为本质上,UserControl也是一个类而已
UserControl的缺陷在于设计时的支持差,不能共享于不同项目,但它简单,易设计/修改,对技术人员的要求也不高
UserControl的缺陷在于设计时的支持差,不能共享于不同项目,但它简单,易设计/修改,对技术人员的要求也不高
#1
供大家参考
“我在用户控件中有一个公用的属性和公用的方法,在调用他的页面中可以访问,但是在后置代码文件中确无法访问到这个用户控件。”
http://expert.csdn.net/Expert/topic/1989/1989975.xml?temp=.6281244
“我在用户控件中有一个公用的属性和公用的方法,在调用他的页面中可以访问,但是在后置代码文件中确无法访问到这个用户控件。”
http://expert.csdn.net/Expert/topic/1989/1989975.xml?temp=.6281244
#2
这个别人不都有写的么,定义一下不就可以了?
protected YouUserControlClass control1;
protected YouUserControlClass control1;
#3
把属性嵌套起来嘛~
很简单的~
我现在的项目用户控件不知道嵌套了多少层。
很简单的~
我现在的项目用户控件不知道嵌套了多少层。
#4
有没有相应的例子可供参考?(40分奉送 ^_^)
#5
crodling(蓝风) ( ) 说得对
#6
>>>1、如何在后台代码中设置和获取用户控件中的子控件的属性?
add public properties/methods in your codebehind class for your usercontrol and declare in your page class:
protected YourUserControlCodeBehindClass YourUserControlID;
..
if you don't have a codebehind class, you can always do
UserControl c = (UserControl)FindControl("YourUserControlID");
TextBox tb = (TextBox) c.FindControl("YourTextBoxIDInYourUserControl);
tb.Text = "123";
>>>2、如何在后台设置和获取用户控件本身的属性?
if you have a codebehind class for your usercontrol, you can do
protected YourUserControlCodeBehindClass YourUserControlID;
YourUserControlID.Property1 = "123";
otherwise, you have to use Reflection
add public properties/methods in your codebehind class for your usercontrol and declare in your page class:
protected YourUserControlCodeBehindClass YourUserControlID;
..
if you don't have a codebehind class, you can always do
UserControl c = (UserControl)FindControl("YourUserControlID");
TextBox tb = (TextBox) c.FindControl("YourTextBoxIDInYourUserControl);
tb.Text = "123";
>>>2、如何在后台设置和获取用户控件本身的属性?
if you have a codebehind class for your usercontrol, you can do
protected YourUserControlCodeBehindClass YourUserControlID;
YourUserControlID.Property1 = "123";
otherwise, you have to use Reflection
#7
谢谢 saucer(思归)
我试了一下,你的方法可以。
此问题基本得到了解决。
菜鸟还有些疑问,Usercontrol的功能是不是有些太有限了一点?与内嵌组件相比,无论属性还是方法似乎都不够强大 -_-
我试了一下,你的方法可以。
此问题基本得到了解决。
菜鸟还有些疑问,Usercontrol的功能是不是有些太有限了一点?与内嵌组件相比,无论属性还是方法似乎都不够强大 -_-
#8
顾名思义,UserControl是以界面为主的,但你可以在你的UserControl加属性/方法/事件,因为本质上,UserControl也是一个类而已
UserControl的缺陷在于设计时的支持差,不能共享于不同项目,但它简单,易设计/修改,对技术人员的要求也不高
UserControl的缺陷在于设计时的支持差,不能共享于不同项目,但它简单,易设计/修改,对技术人员的要求也不高