我在datagridview绑定数据,然后又不想用户能编辑之前绑定数据的列,但是又得新增一列来添加数据(就没办法全部设置readony为true),这要怎么做?
我用for 循环来绑定之前的列的readonly,但是没效果。
       public void Readonly()
        {
            for (int i = 0; i <= datagridview.RowCount - 1; i++)
            {
                this.datagridview.Rows[i].ReadOnly = true;
            }
        }

解决方案 »

  1.   

    试试:public void Readonly()
    {
        for (int i = 0; i <= dataGridView1.Columns.Count- 1; i++)
        {
            this.dataGridView1.Columns[i].ReadOnly = true;
        }
    }
      

  2.   

    还有人使用datagridview?5年前的东西了。而且,其机制跟asp.net2.0以后的控件设计有很大不同,对我的项目来说它是有害的。
      

  3.   

    并且这样跟直接设定dataGridView1.readonly=true没什么区别的
      

  4.   


    public void Readonly()
      {
      for (int i = 0; i <= datagridview.RowCount - 1; i++)
      {
          for (int i = 0; i <= dataGridView1.Columns.Count- 1; i++)
        {
            this.dataGridView1.Columns[i].ReadOnly = true;
        }
          
      }
      }
    去具体到某一列只读
      

  5.   


    public void Readonly()
      {
      for (int i = 0; i <= datagridview.RowCount - 1; i++)
      {
          for (int j = 0; j <= dataGridView1.Columns.Count- 1; j++)
        {
            this.dataGridView1.Columns[i].ReadOnly = true;
        }
          
      }
      }
    去具体到某一列只读
      

  6.   

    [Quote=引用 3 楼 sp1234 的回复:]
    还有人使用datagridview?5年前的东西了。而且,其机制跟asp.net2.0以后的控件设计有很大不同,对我的项目来说它是有害的。
    那现在用什么呢?我是新手,请指教!
      

  7.   

    dataGridView1.Columns["Name"].ReadOnly = true;
    listview
      

  8.   


    private void button2_Click(object sender, EventArgs e)
    {
        DataGridViewColumn col = new DataGridViewTextBoxColumn();
        col.HeaderText = "新加列";
        dataGridView1.Columns.Add(col);
    }