例如DropDownList就可以插入一行,添加一行
DataGrid中可以吗?

解决方案 »

  1.   

    四四看:
    DataGrid.DataSource.Rows
      

  2.   

    DataGrid通常都是来源于Table
    然后实例化一个DataRow对象
    插入值去这个DataRow
    然后把DataRow插入到Table
    再把DataGrid.DataSourse = Table就行了
      

  3.   

    [C#] 
    private void CreateNewDataRow(){
        // Use the MakeTable function below to create a new table.
        DataTable myTable;
        myTable = MakeNamesTable();
        // Once a table has been created, use the NewRow to create a DataRow.
        DataRow myRow;
        myRow = myTable.NewRow();
        // Then add the new row to the collection.
        myRow["fName"] = "John";
        myRow["lName"] = "Smith";
        myTable.Rows.Add(myRow);
        
        foreach(DataColumn dc in myTable.Columns)
           Console.WriteLine(dc.ColumnName);
        dataGrid1.DataSource=myTable;
     }
     
     private DataTable MakeNamesTable(){
        // Create a new DataTable titled 'Names.'
        DataTable namesTable = new DataTable("Names"); 
        // Add three column objects to the table.
        DataColumn idColumn = new  DataColumn();
        idColumn.DataType = System.Type.GetType("System.Int32");
        idColumn.ColumnName = "id";
        idColumn.AutoIncrement = true;
        namesTable.Columns.Add(idColumn);
        DataColumn fNameColumn = new DataColumn();
        fNameColumn.DataType = System.Type.GetType("System.String");
        fNameColumn.ColumnName = "Fname";
        fNameColumn.DefaultValue = "Fname";
        namesTable.Columns.Add(fNameColumn);
        DataColumn lNameColumn = new DataColumn();
        lNameColumn.DataType = System.Type.GetType("System.String");
        lNameColumn.ColumnName = "LName";
        namesTable.Columns.Add(lNameColumn);
        // Create an array for DataColumn objects.
        DataColumn [] keys = new DataColumn [1];
        keys[0] = idColumn;
        namesTable.PrimaryKey = keys;
        // Return the new DataTable.
        return namesTable;
     }MSDN例子,看上半段好了!
      

  4.   

    谢谢楼上几位
    但我的问题用代码插入一行
    而不是绑定添加好的行
    就类似于DropDownList的插入行一样
      

  5.   

    TableRow Row  ;TableCell Cell1 ;
    TableCell Cell2 ;
    TableCell Cell3 ;
    TableCell Cell4 ;
    TableCell Cell5 ;//定义,这一行有五个字段Row = new TableRow() ;
    Cell1 = new TableCell() ;
    Cell1.BorderWidth = 1 ;
    Cell1.Width = 50 ;
    Cell1.Text = "数据" ;Cell2 = new TableCell() ;
    Cell2.Text = "数据" ;
    ·
    ·Row.Cells.Add(Cell1) ;
    Row.Cells.Add(Cell2) ;
    ·
    ·
    DG_Type.Rows.Add(Row) ;//DG_Type为插入DataGrid的id
      

  6.   

    可以在dataset中加一行重新绑定到datagrid,安全方便。