将第一行值复制到窗体应用程序中GridView的其他行

本文关键字:窗体 应用程序 GridView 其他 一行 复制 | 更新日期: 2023-09-27 17:50:55

我有一个WinForm应用程序,在这个窗体上我有以下控件:

1-Grid view
2-Copy button

-我怎么能把只有1个按钮(复制按钮)旁边的网格视图的第一行?-我如何填充第一行,并使其他16行相同,我的第一行点击复制按钮后?唯一不同的是ID得到的是增量值。

例子:

ID   Explanation  Teacher_ID
---  -----------  ----------
0    hello        45         CopyButton
1    hello        45
2    hello        45
3    hello        45
.    .            .
.    .            .
.    .            .
16   hello        45

将第一行值复制到窗体应用程序中GridView的其他行

创建查找类

  public class LookUp
    {
        public long Id { get; set; }
        public string Explanation { get; set; }
        public long TeacherId { get; set; }
    }

打开按钮点击

   private void ClickEvent()
    {
        //Use correct columnId or name here
         var name = dataGridView1.Rows[1].Cells[2] != null ? dataGridView1.Rows[1].Cells[2].ToString() : "";
         var id = dataGridView1.Rows[1].Cells[3] != null ? long.Parse(dataGridView1.Rows[1].Cells[3].ToString()) : 0;
         var datalist = GetList(name, id, 16); //you have a copy of values with diffrent ids -- rest is for you
    }
  //create a method which return copy of values but with different id
    private IEnumerable<LookUp> GetList(string name, long id,int till)
     {
        for (var i = 1; i <= till; i++)
         {
           yield return new LookUp() { Id = i, Explanation = name,TeacherId = id};                    
          }
     }