0

我有几个子视图加载到父视图上。某些函数使用 .sendtoback 将当前视图发送到堆栈的后面。如何确定一个视图当前是否位于其他视图的前面?检查“可见”属性不起作用,因为所有视图在技术上都设置为可见;只是除了一个视图之外的所有视图都被其他视图隐藏了。

4

2 回答 2

1

请参阅此问题的 C# 版本的以下链接。

如何检查用户控件是否在 C# 中的其他人前面?

VB.net 中的代码应如下所示。

Private Function IsControlAtFront(control As Control) As Boolean
    Return control.Parent.Controls.GetChildIndex(control) = 0
End Function
于 2013-11-13T21:02:09.823 回答
1

您可以使用Control.ControlCollection.GetChildIndex方法来获取子控件的索引。

根据 MSDN 上的描述:

索引值为零的控件位于 z 顺序的顶部,数字越大越靠近底部。

于 2013-11-13T21:00:37.617 回答