datagrid.ReadOnly=True,如何做到编辑datagrid中选中的某一行,其他行为只读

解决方案 »

  1.   

    pupo(泡泡) :做起来很麻烦吗?
      

  2.   

    DataGridTableStyle ts1 = new DataGridTableStyle();
    ts1.MappingName = "Customers";
          
    DataGridColumnStyle nameCol = new DataGridTextBoxColumn();
    nameCol.MappingName = "Name";
    nameCol.HeaderText = "Name";
    nameCol.Width = 350;
    ts1.GridColumnStyles.Add(nameCol);
          
    DataGridColumnStyle idCol = new DataGridTextBoxColumn();
    idCol.MappingName = "ID";
    idCol.HeaderText = "ID";
    idCol.ReadOnly = true; //设置成只读列
    idCol.Width = 150;
    ts1.GridColumnStyles.Add(idCol); this.dataGrid1.TableStyles.Clear();
    this.dataGrid1.TableStyles.Add(ts1);
      

  3.   

    pupo(泡泡) :谢谢,可以给点思路吗?
      

  4.   

    pupo说得很对啊,你选了一行,这时难道还可以编辑另一行吗?换句话说,你不可能在保持某行选中的情况下编辑另外一行!
      

  5.   

    to:firstrose(kots)我的意思是:选中某行(此时此行只读),(假设)右键弹出菜单,选菜单上的编辑,此行由只读状态变成可编辑状态.我要避免的是用户无编辑需要的行处于编辑状态