DataSet myds;
myds=myAdoHelper.FillComboBox();
comboProvince .DataSource =myds.Tables [0];
comboProvince.DisplayMember ="province_name";
如果设成grid的datasource为myds.tables[0]的话可以有数据,但是为什么用上面的语句设置combobox,显示“System.Data.DataRowView”有什么地方有问题呢?我如果把ds的数据显示在grid中是正常的。

解决方案 »

  1.   

    設置combobox的話,要設置字段的.value
      

  2.   

    检查”province_name“这个是不是打错了换个别的列名试一下
      

  3.   

    private void ListMaritalStatus()
    {
    drpMaritalStatus.Items.Clear(); drpMaritalStatus.DataSource=ListMaritalStatusBLL();
    drpMaritalStatus.DataValueField="value";//数据库id
    drpMaritalStatus.DataTextField="text";//要显示的字段名字
    drpMaritalStatus.DataBind();
    }
    public static DataTable ListMaritalStatusBLL()
    {
    DataTable dt=ListMaritalStatusDAL().Table[0];
    return dt;
    }
    public static DataSet ListMaritalStatusDAL()
    {
    string sql="select * from CaseType order by ItemValue";
    DataSet ds=DataHelper.ExecuteDataset(sql);
    return ds;
    }
    private void Page_Load(object sender, System.EventArgs e)
    {
    if(!Page.IsPostBack)
    {
    ListMaritalStatus();
    }
    }
      

  4.   

    靠,我把combobox删掉重新加上一个就好了,什么原因。服了。