VB6 / VBA TabStrip可以在两个选项卡中具有相同的控件?

时间:2012-05-25 04:49:47

标签: vba vb6 vb6-migration

我注意到VBA / VB6 TabStrip控件允许在其页面中克隆其子节点的实例。我正在查看一个旧的VBA项目,它有一个tabtrip,幕后它只是添加页面,控件会自动复制,但可以有不同的数据源。

有什么方法可以在VB.NET中复制它吗?

1 个答案:

答案 0 :(得分:5)

在VB6中,TabStrip控件不是一个容器,它只是在任何容器的底层 - 最常见的是一个图片框 - 一个放在它的面板区域上。因此,可以为每个选项卡使用相同的控件,只需更改标签标题和/或数据源即可更新它们。

在VB.NET中,TabControl为每个选项卡提供了一个类似于面板的对象,称为TabPage。因此,您可以在设计时在每个页面上放置单独的控件,或者,为了模拟VB6方法,通过更改其父级'以编程方式在页面之间移动控件。运行时的属性。这通常在TabControl的SelectedIndexChanged事件中完成,如下所示:

Private Sub TabControl1_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles TabControl1.SelectedIndexChanged
    DataGridView1.Parent = TabControl1.SelectedTab
End Sub