引用拆分容器内的TableLayoutPanel控件

时间:2016-08-29 10:54:17

标签: vb.net datagridview

如何引用Datagridview里面TableLayoutPanel内部SplitContainer Panel1内的Datagrid控件?我需要在其他表单的代码中隐藏此 private void MainForm_Load(object sender, EventArgs e) { Xpcom.Initialize("Firefox"); GeckoPreferences.User["browser.xul.error_pages.enabled"] = true; GeckoPreferences.User["media.navigator.enabled"] = true; GeckoPreferences.User["media.navigator.permission.disabled"] = true; // enable Access to video & audio GeckoWebBrowser browser = new GeckoWebBrowser(); browser.Dock = DockStyle.Fill; this.Controls.Add(browser); // browser.Navigate(@"http://www.palava.tv"); browser.Navigate(@"file:///D:/SimpleWebRTC-master/index.html"); }

所以,设计是:Form - > Split Container - > TableLayoutPanel - > datagridview的

任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:0)

如果您要将DataGridView添加到设计器中,则可以通过FormReference.DataGridViewName简单地调用它。

您只需确保设计器中的GenerateMember属性设置为True,即Default Value,并且修饰符设置为允许公共访问的内容。

答案 1 :(得分:0)

我找到了答案,并不像我想的那么简单。

  1. VB.NET中没有“自动表单集合”。
  2. 如果控件在Form1上,那么当您打开Form2时,它需要具有 一种查找Form1的Open版本的方法。只需参考Form1即可 没有得到Open Form1的引用,只是对Form1类的引用。

    因此,Form2需要一个引用open Form1的变量:

      Public OpenedForm1 as Form1
    

    然后要打开Form2,Form1需要:

    Dim f as new Form2
    f.OpenedForm1 = Me
    f.show
    

    然后Form2将引用打开它的Form1上的控件:

    Me.OpenedForm1.NameOfControl
    

    如果有人对此有更好的了解,请告诉我 - 我不太喜欢它。