小弟在做程序的时候有一个问题
程序结构是这样的
ModulesBase.CS
     |
     |
List.aspx --  List.aspx.cs在List.aspx里有一个DropDownList控件, 以前在List.aspx.cs里对DropDownList初始化的时候都没有问题,后来想把DropDownList初始化的程序,把它放到List.aspx的基类里(ModulesBase.CS).
在 ModulesBase.CS 做一个程序
Public DropDownList SelectInit()
{
DropDownList UserActionSelect = new DropDownList()
UserActionSelect.DataSource = base.DataTableUsreActionsSelect;
UserActionSelect.DataTextField = base.UserActionSelect_DataTextField;
UserActionSelect.DataValueField = base.UserActionSelect_DataValueField;
UserActionSelect.DataBind();
return UserActionSelect;
}
List.aspx.cs 的初始化程序private void Page_Load(object sender, System.EventArgs e)
{
UserSelect  = SelectInit()
}
如果这样做,前台页面中的 UserSelect 的控件中并没有绑定任何数据.
不知道是为什么, 想看看大家有什么建议

解决方案 »

  1.   

    ModulesBase还有基类吗?
    设断电跟踪一下看看绑定的数据是否正确
      

  2.   

    List.aspx.cs 继承自 ModulesBase.CS, 那ModulesBase.CS 继承自 Page 类, Page_Load 是在ModulesBase.CS 中执行的,List.aspx.cs 中的没有执行,你设置断点跟踪看看
      

  3.   

    ModulesBase这个基类没有得到UserActionSelect这个控件,可以在基类里面做个属性
    private DropDownList _UserActionSelect;
    public DropDownList UserActionSelect
    {
         get{return _UserActionSelect;}
         set{_UserActionSelect=value}
    }然后在派生类里面调用绑定方法前给属性赋值:
    UserActionSelect=yourcontrolname;