本帖最后由 newboyjia 于 2010-07-29 10:08:21 编辑

解决方案 »

  1.   

    ddl.DataSource=ds1.Tables[ "dwmc"].DefaultView;//这一句总是报未将对象引用设置到对象的实例。这里加个断点,看看ds1里面是怎样~
      

  2.   

    ds1.Tables[ "dwmc"]
    这张表不存在
      

  3.   

    插断点 运行显示 ds1={system.data.dataset}
      

  4.   

    同意
    SqlDataAdapter da1=new SqlDataAdapter();
    da1.SelectCommand=cmd1;
    DataSet ds1=new DataSet();
    da1.Fill(ds1,"dwmc");
    换成这样试试
    String CommandText="SELECT distinct dw_id,dwmc FROM dwmc where xilie=1 and (dw_id=1 or dw_id=2 or dw_id=4111 or dw_id=5111)";
    SqlDataAdapter da1=new SqlDataAdapter(CommandText,cn);
    DataSet ds1=new DataSet();
    da1.Fill(ds1,"dwmc");
      

  5.   


    鼠标放在ds1上,右边会显示一个放大镜,点击放大镜进去查看ds1里面的Table~
      

  6.   

    ////////////ddl.DataSource=ds1.Tables[ "dwmc"].DefaultView;//这一句总是报未将对象引用设置到对象的实例。 
    你换成////////////ddl.DataSource=ds1.Tables[0].DefaultView;
    看看有没有效果 看这个表是不是有问题先
      

  7.   

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    ListItemType   lit   =   e.Item.ItemType;  if   (lit   ==   ListItemType.Item   ||   lit   ==   ListItemType.AlternatingItem   ||   lit   ==     ListItemType.EditItem) 

    SqlConnection cn=new SqlConnection(ConfigurationSettings.AppSettings ["ConnectionString2"]);                String CommandText="SELECT  dw_id,dwmc FROM dwmc ";
                    SqlDataAdapter da1=new SqlDataAdapter(CommandText,cn);
                    DataSet ds1=new DataSet();
                    da1.Fill(ds1,"dwmc"); DropDownList   ddl     =   (DropDownList)(e.Item.Cells[10].FindControl( "DropDownList6 ")); 
                    
    ddl.DataSource=ds1.Tables["dwmc"].DefaultView;//这一句总是报未将对象引用设置到对象的实例。   
    ddl.DataTextField= "dwmc "; 
    ddl.DataValueField="dw_id";
    ddl.DataBind(); 

    cn.Close(); }
    }
      

  8.   

    不难,你要获取dropdownlist的displaymember,valuemember, 以及其他列,然后设置dgv的列,就OK了
      

  9.   

    DropDownList ddl = (DropDownList)(e.Item.Cells[10].FindControl( "DropDownList6 ")); 
    應該是沒有找到DropDownList改成
    DropDownList ddl = (DropDownList)(e.Item.FindControl( "DropDownList6 ")); 
      

  10.   


      String CommandText="SELECT dw_id,dwmc FROM dwmc ";
      SqlDataAdapter da1=new SqlDataAdapter(CommandText,cn);
    //  DataSet ds1=new DataSet();
    //  da1.Fill(ds1,"dwmc");DropDownList ddl = (DropDownList)(e.Item.Cells[10].FindControl( "DropDownList6 "));  
        
    ddl.DataSource=da1.Tables[0].DefaultView;//这一句总是报未将对象引用设置到对象的实例。   
    ddl.DataTextField= "dwmc ";  
    ddl.DataValueField="dw_id";
    ddl.DataBind();试试看 如果再不行 就说明数据库查询有问题了
      

  11.   

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
      {
       SqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["conn"]);
       SqlDataAdapter da=new SqlDataAdapter("select * from Tb",conn);
       DataSet ds=new DataSet();
       da.Fill(ds,"table1");
       if(e.Item.ItemType==ListItemType.EditItem)
       {
        DropDownList ddl=(DropDownList)e.Item.FindControl("ddl");
        ddl.DataSource=ds.Tables["table1"];
        ddl.DataTextField="name";
        ddl.DataValueField="id";
        ddl.DataBind();
        ddl.Items.FindByValue(Convert.ToString(DataBinder.Eval(e.Item.DataItem,"id"))).Selected=true;
       }
      }
      

  12.   


    dal 不支持 Tables类型
      

  13.   

    ddl.DataTextField= "dwmc ";  
    ddl.DataValueField="dw_id";
    试试把这两句放前面
    ddl.DataSource=ds1.Tables[ "dwmc"].DefaultView;//这一句总是报未将对象引用设置到对象的实例。   
    ddl.DataBind();  
      

  14.   

     
                cbmStudent.DisplayMember = "StudentName";
                cbmStudent.ValueMember = "id";
                cbmStudent.DataSource = dt_Student;这个就是例子了 
    DropDownList ddl = (DropDownList)(e.Item.Cells[10].FindControl( "DropDownList6 "));
    这句话我拿去试试
      

  15.   

    哎 我现在才恍然 原来你做的是网页BS的 我一直在写WinForm的 - -
      

  16.   

    SqlConnection conn= new 
    SqlConnection(ConfigurationSettings.AppSettings["job"]);//数据库连接信息 
    SqlCommand myCommand = new SqlCommand( "select * from info", conn ); //SQL命令 
    myCommand.Connection.Open(); //打开数据库 
    SqlDataReader myReader = myCommand.ExecuteReader(); //获取数据 
    while ( myReader.Read() ) 

    DropDownList.Items.Add( new ListItem( 
    myReader["depsimplename"].ToString(),myReader["depcode"].ToString()));//增加dropwoenlist项 } 
    myCommand.Connection.Close(); //关闭数据库 
    若要指定绑定后的数据选定项 
    可使用DropDownList.Items.FindByText("name").Selected=true或者 
    DropDownList.Items.FindByValue("code").Selected=true 
    另外也可从数据库中获得选定项(比如修改信息的时候) 
    可使用先用数据库填充一个DateSet--ds,然后使用DropDownList.Items.FindByValue/*或者FindByText*/(ds.Tables[0].Rows[0].ItemArray[0].ToString()).Selected=true; 
      

  17.   


    SqlConnection conn= new SqlConnection(ConfigurationSettings.AppSettings ["ConnectionString2"]);//数据库连接信息 
    SqlCommand myCommand = new SqlCommand( SELECT distinct dw_id,dwmc FROM dwmc where xilie=1 and (dw_id=1 or dw_id=2 or dw_id=4111 or dw_id=5111)", conn ); //SQL命令 
    myCommand.Connection.Open(); //打开数据库 
    SqlDataReader myReader = myCommand.ExecuteReader(); //获取数据 
    while ( myReader.Read() ) 

    DropDownList6.Items.Add( new ListItem( 
    myReader["dwmc"].ToString(),myReader["dw_id"].ToString()));//增加dropwoenlist项 

    myCommand.Connection.Close(); //关闭数据库 你把你的代码换成这个试试
      

  18.   


    DropDownList6 是在DataGrid里的  这样写直接就出错了
      

  19.   


    DropDownList ddl = (DropDownList)(e.Item.Cells[10].FindControl( "DropDownList6 "));
      
    SqlConnection conn= new SqlConnection(ConfigurationSettings.AppSettings ["ConnectionString2"]);//数据库连接信息 
    SqlCommand myCommand = new SqlCommand( SELECT distinct dw_id,dwmc FROM dwmc where xilie=1 and (dw_id=1 or dw_id=2 or dw_id=4111 or dw_id=5111)", conn ); //SQL命令 
    myCommand.Connection.Open(); //打开数据库 
    SqlDataReader myReader = myCommand.ExecuteReader(); //获取数据 
    while ( myReader.Read() ) 

    ddl.Items.Add( new ListItem( 
    myReader["dwmc"].ToString(),myReader["dw_id"].ToString()));//增加dropwoenlist项 

    myCommand.Connection.Close(); //关闭数据库 试试吧 再不行我就没辙了
      

  20.   

    DropDownList ddl = (DropDownList)(e.Item.Cells[10].FindControl( "DropDownList6 "));
    ---------------------------
    控件ID多了一个空格,写成这样比较好.DropDownList ddl = (e.Row.Cells[10].FindControl("DropDownList6")) as DropDownList;
            if (ddl == null)
            {
                //转换不成功.
                //....
            }
      

  21.   


    ddl.Items.Add( new ListItem(myReader["fsid"].ToString(),myReader["czfs"].ToString()));//增加dropwoenlist项  
    ---------未将对象引用到实例