2015-01-14 87 views
1

我一直在环顾网络寻找答案,但我似乎无法弄清楚。我需要知道哪个标签页是当前选定的页面。但是DevExpress的文档让我感到困惑,并且在视觉基础中没有相关的答案。DevExpress TabPages - 获取当前标签页

我知道我需要使用tabpage changed事件,我已经在下面显示了,但我不确定检查tabpage 2是否是当前选定/打开页面的语法。任何帮助,将不胜感激。

Private Sub XtraTabControl1_SelectedPageChanging(ByVal sender As System.Object, ByVal e As DevExpress.XtraTab.TabPageChangingEventArgs) Handles XtraTabControl1.SelectedPageChanging 

    'If Current tabpage = tabpage 2 Then 
     'Do something 
    'end if 

End Sub 

回答

3

您可以使用XtraTabControl.SelectedTabPage属性来获取当前标签页。

If xtraTabControl1.SelectedTabPage Is XtraTabPage2 Then 
    'Do something 
End If 

但是,如果你想在XtraTabControl.SelectedPageChanging事件以获取当前标签页,然后就可以使用e.PrevPage属性。
这里是例子:

Private Sub XtraTabControl1_SelectedPageChanging(ByVal sender As System.Object, ByVal e As DevExpress.XtraTab.TabPageChangingEventArgs) Handles XtraTabControl1.SelectedPageChanging 

    If e.PrevPage Is XtraTabPage2 Then 
     'Do something 
    End If 

End Sub 
0

我相信e.Page应该让你知道什么页面被称为事件。

1

我最后不得不用这个,由于某种原因,建议只有当放置在IF语句中的错误 - 这是有关不的一员“=”符号XtraTabControl1。但这工作:

If XtraTabControl1.SelectedTabPage.Equals(XtraTabPage2) Then 
      'Do something 
      MsgBox("Tabpage2") 
     End If 
+0

是的,你说得对。如果您想比较对象引用,则在vb.net中,您必须使用['Is'](http://msdn.microsoft.com/en-us/library/kb136x1y.aspx)运算符。我更新了我的[答案](http://stackoverflow.com/a/27936636/1805640)。 – nempoBu4