如题!

解决方案 »

  1.   

    类似这个
    http://community.csdn.net/Expert/topic/3522/3522038.xml
    up者也有分!
      

  2.   

    DataView dv;
    dv=ds.Tables["datatable"].DefaultView;
    dv.AllowNew=false;
    dv.AllowEdit=false;
    或者 
    dataGrid1.DataSource=dv;
    DataGridTableStyle ts=new DataGridTableStyle();
    ts.MappingName="datatable";
    dataGrid1.TableStyles.Add(ts);
    dataGrid1.TableStyles[0].GridColumnStyles[0].ReadOnly=true;
    以上两种方法都可以实现单元格不可编辑
      

  3.   

    大哥,去这看看吧http://windowsforms.net/TrackViews.aspx?ID=131&Type=Samples&Redir=%2fSamples%2fdownload.aspx%3fPageId%3d1%26ItemId%3d131%26tabindex%3d4
      

  4.   

    直接定义单元格为不可编辑状态即可,默认情况下DataGridColumnStyle的单元格为label。
      

  5.   

    private System.Windows.Forms.label lb;//假设你要添加的是一label控件
    private void Dbgrid_CurrentCellChanged(object sender, System.EventArgs e)
    {
        DataGridCell selectedCell = Dbgrid.CurrentCell;
        if(selectedCell.ColumnNumber==2)//假设你要在第三个单元格中添加
        {
            DataGridTextBoxColumn SelectedBox= (DataGridTextBoxColumn)Dbgrid.TableStyles[0].GridColumnStyles[2];
            SelectedBox.TextBox.Controls.Add(lb);//就添加进去了
        }
    }