我一直在尝试使用DirectCast编辑其他窗口中的变量,例如在 VB.NET 中。这似乎与主窗口配合得很好,因为我使用
Private Main As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
但是,我找不到一种方法将其与主窗口以外的窗口一起使用。目前,我被困在使用它
Dim WindowOne As New Window1
WindowOne.Show()
这有效,但我宁愿不必在每次希望打开窗口时都创建窗口的新实例。我试过使用
Private WindowOne As Window1 = DirectCast(Application.Current.Windows.OfType(Of Window1).First(), Window1)
但它总是给我一个错误,说"序列不包含任何元素"。
还有其他方法可以做到这一点吗?我做错了什么?
正确的语法如下。
Private WindowOne As Window1 = Application.Current.Windows.OfType(Of Window1)().FirstOrDefault()
If Not WindowOne Is Nothing Then
'object is available here
End If