动态的赋值,当UseControl里的控件值改变时,怎么才能传给要调用它的方法呢。比如我的UseControl里有个chekBox,实例化一个UseControl,然后设置它的一个属性值ChkValue为checkBox的chenked值。为什么不能动态得到chenkBox的chenked值呢。只能得到一个实例化UseControl时车checked值。

解决方案 »

  1.   

    一:把usercontrol里的checkbox的modify设置为public;
    二:在用户方添加事件委托:
     userControl1.checkBox1.CheckedChanged += new EventHandler(checkBox1_CheckedChanged);
     void checkBox1_CheckedChanged(object sender, EventArgs e)
            {
                MessageBox.Show(userControl21.checkBox1.Checked.ToString());
            }
      

  2.   

    在usecontrol父窗体中建一个public方法aaa,
    把父窗体的权柄bbb传给usecontrol,
    这时在usecontrol里操作,bbb.aaa(para);用以上的形式应该可以的
      

  3.   

    实例化一个UseControl,然后设置它的一个属性值ChkValue为checkBox的chenked值。为什么不能动态得到chenkBox的chenked值呢。只能得到一个实例化UseControl时车checked值
    怎么个动态法?你实例化usecontrol后才可以得到checkbox实例吧?没有checkbox你怎么个获取值法?
    不是很明白这句话的意思...
      

  4.   

    如果你要在aspx页面里直接使用usercontrol,请public usercontrol;如果你要在aspx里面catch usercontrol event;请在aspx 里面重写该事件bind 方法。aspx:public  usercontrol a;a.checkedchange+=.............
      

  5.   

    根据Request[ContainerID+"_"+UserControlID]获取