用户控件声明的属性怎么在.aspx.cs中赋值?
用户控件声明属性如下:
public string typeid = ""; public string gettypeid
{
get

return typeid;
}
set
{
typeid = value;
}
}我想在.aspx.cs中实现
uc1.typeid = "2";这样的操作应该怎么写
Attribute.add不行

解决方案 »

  1.   

    protected 用户控件所在的名称空间 usercontrol1 //这个名字要与页面的用户控件名字一致,否则要出错的。usercontrol1.gettypeid = "2"private string typeid = ""; public string gettypeid
    {
    get

    return typeid;
    }
    set
    {
    typeid = value;
    }
    }
      

  2.   

    例如:
    用户控件文件名:UserControl.ascxUserControl uc=(UserControl)this.FindControl("UserControl1");uc.属性="XXX";这样就可以了
      

  3.   

    hxling1981(冷雨星空)说得不是很清楚了嘛
      

  4.   

    ***************声明的属性在CS中显不出来**********
    UserControl uc=(UserControl)this.FindControl("UserControl1");uc.属性="XXX";谁能把uc.typeid这么写上编译不报错!!
      

  5.   

    晕这样当然显示不出来了,你是用FindControl,它还没找到怎么显示?
      

  6.   

    uc.gettypeid="XXX";
    这样就是在为typeid符值
    typeid最好声明为private
      

  7.   

    如果我在页面上直接这么写如下:
    <uc1:proexample id="Proexample1" runat="server" typeid="3"></uc1:proexample>
    其中的typeid="3" 就可以取出来。但在CS中:
    protected System.Web.UI.UserControl Proexample1;private void Page_Load(object sender, System.EventArgs e)
    {
    //这其中
    Proexample1.gettypeid = "3";//错误,没显示出来此属性,编译不过去
    Proexample1.typeid = "3";//错误,没显示出来此属性,编译不过去
    }
      

  8.   

    对于容器 Web Form 来说, Web 用户控件是一个完全未知的黑盒子,所以就必须使用“反应”(Reflection)的机制,所谓的“反应”,指的是以代码动态探索对像类型与显示成员的过程,在 .NET Framework 的 System.Reflection 命名空间,提供了 PropertyInfo 与 MethodlInfo 两个类,并分别包含了 SetValue 与 Invoke 两个静态方法用来访问 Web 用户控件的属性、方法,原形声明如下:public void SetValue(object obj, object value, object[] index)
    public object Invoke(object obj, object[] parameters)使用如下:
    1) 以 Page.FindControl 方法,获取 Web 用户控件的运行实例。
    2) 调用该控件的 GetType 方法,获取 Web 用户控件的类型。
    3) PropertyInfo 可以利用步骤 2 类型对象的 GetProperty 方法,传递属性的名称作为参数,以便随后调用 SetValue 方法。
    4) MethodInfo 则可以利用步骤 2 类型对象的 GetMethod 方法,传递方法的名称作为参数,以便随后调用 Invoke 方法。
      

  9.   

    加入:
    [Bindable(true),Category("Appearance"),DefaultValue("")]
      

  10.   

    Mister(菜青虫) 
    弄不出来,帮一下,给个例子
      

  11.   

    Control mControl = Page.FindControl("用户控件");
    Type mControlType = mControl.GetType();// 访问用户控件的属性
    PropertyInfo mUCDisableItem = mControlType.GetProperty("属性名称"); 
    mUCDisableItem.SetValue(mControl, 属性值, 索引) // 无“索引”赋值为 null
    // 读取属性用:GetValue 详见 MSDN// 访问用户控件的方法
    MethodInfo mUCMethod = mControlType.GetMethod("方法名称");
    mUCMethod.Invoke(mControl, 参数数组);