public string SelectedItem
{
   get { return UserSelectedItem;}
   set
   {
UserSelectedItem = value;
    }
}
orpublic string SelectedItem
{
   get { return this.ddl_department.SelectedValue;}
}

解决方案 »

  1.   

    Department userctl = new affair.WebControl.Department();
    string strDepartmentID = userctl.UserSelectedItem;取值后,什么也没有....
      

  2.   

    is that all in the aspx? how did you display the user control? care to show some more code, orDepartment userctl = new affair.WebControl.Department();
    form1.Controls.Add(userctl);
    string strDepartmentID = userctl.UserSelectedItem;
      

  3.   

    是在webform下运行,直接将用户控件拖到webform里,用户点击注册按钮,从用户控件中取相应的值
      

  4.   

    1. in Department class:
    public string SelectedItem
    {
       get { return this.ddl_department.SelectedValue;}
    }
    2. in your page class, don't callDepartment userctl = new affair.WebControl.Department();declare a variable in your page class code (usectl will the ID of the user control)protected Department userctl; >>>用户点击注册按钮in your 注册按钮 handler, userctl.SelectedItem
      

  5.   

    郁闷了... 再求助一次.谢谢 saucer(思归/MVP) !未将对象引用设置到对象的实例。
    行 115: string strDepartmentID = userctl.SelectedItem;Department.ascx
    ----------------
    public class Department : System.Web.UI.UserControl
    {
    protected System.Web.UI.WebControls.DropDownList ddl_department;
    protected affair.Government_Affair.DS_Department_Lists dS_Department_Lists1;
    public string sqlstring;
    private void Page_Load(object sender, System.EventArgs e)
    {
    if(!IsPostBack)
    {
    DataSet ds = dS_Department_Lists1;
    sqlstring = "SELECT DepartmentID, DepartmentName from tblDepartment";
    BindTopData(ds,"tblDepartment",sqlstring);
    }
    } public string SelectedItem
    {
    get { return this.ddl_department.SelectedValue;}
    } private void BindTopData(System.Data.DataSet ds,string tablename,string sqlstring)
    {
    sqlstring = "SELECT DepartmentID, DepartmentName from tblDepartment";
    SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["sql_connstr"]);
    SqlCommand cmd = new SqlCommand(sqlstring,conn);
    conn.Open();
    SqlDataReader myDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
    ddl_department.Items.Add(new ListItem("选择一个部门","-1"));
    while(myDataReader.Read())
    {
    ddl_department.Items.Add(new ListItem(myDataReader.GetSqlValue(1).ToString(),myDataReader.GetSqlValue(0).ToString()));
    }
    conn.Close();
    }
    } ...自动生成的部分略.Register.aspx
    -------------
    public class Register : System.Web.UI.Page
    {
    protected Department userctl;
    private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    load_init();

    }
    private void btnReg_Click(object sender, System.EventArgs e)
    {
    string strDepartmentID = userctl.SelectedItem;
                                ...............
    }
    }
      

  6.   

    show Register.aspx, do you have something like<cc:... id="userctl" runat="server" />???
      

  7.   

    <%@ Register TagPrefix="uc1" TagName="Department" Src="../WebControl/Department.ascx" %><uc1:Department id="uc_ddl_department" runat="server"></uc1:Department>找到错误了,万分感谢 saucer(思归/MVP)  !!