现在的情况是我通过一个函数得到了控件的名字
而要在 public void paste(DataGridView dgv)
此函数中调用相应名字的datagridview
但是datagridview的名字的类型是string
如何通过他的名字在paste中调用相应名字的datagridview

解决方案 »

  1.   

    string controlname = "dataGridView1";
    DataGridView dgv = this.Controls[controlname] as DataGridView;
    ...
      

  2.   

     ((DataGridView )sender).Name== "名字"
      

  3.   

    dgv.Name调用传过来的DataGridView控件的Name属性
      

  4.   

    没明白你要说什么~
    DataGridView datagridview
    public void paste(DataGridView dgv)
    {
       string name1=dgv.Name()//就直接获取名字了!
       string name2=datagridview.Name()//
    }
      

  5.   

    大概明白
    上面的方法里paste(datagridview);
    ---------------------------------------public void paste(DataGridView dgv)
    {
      string name1=dgv.Name()//
    }
      

  6.   

    我要调用控件   控件的名字 我已经有了   do you understand?
      

  7.   

    那是你别的地方的问题。如果获取不到,返回 null,程序会丢出异常的。
      

  8.   

    大哥 重点不是这句string name1=dgv.Name;//
    是这句paste(datagridview);你的意思就是传对象public void paste(DataGridView dgv) 这是带参方法你所要的 传 DataGridView 类型的参数
    DataGridView dataGridView1=new DataGridView();//自己托控件,就不用写了
    dataGridView1 就是DataGridView 控件的Name;
    paste(dataGridView1); //就是传控件啊public void paste(DataGridView dgv)
    {
    string name1=dgv.Name;//就可以直接调用控件属性和方法啦。 这只name1的值肯定是dataGridView1 
    }
      

  9.   

      dataGridView1 就是DataGridView 控件的Name  这个我知道   但是问题是NAME是sring类型 而控件是datagridview类型    你觉得我能直接在调用paste函数的时候  直接写上paste(datagridview1)吗