DirectCast任何窗口,不仅是主窗口?

时间:2013-12-25 16:42:01

标签: wpf vb.net window directcast

我一直在尝试使用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)

但它总是给我一个错误,说“序列不包含任何元素”。

还有其他办法吗?我做错了什么?

1 个答案:

答案 0 :(得分:1)

正确的语法如下。

Private WindowOne As Window1 = Application.Current.Windows.OfType(Of Window1)().FirstOrDefault()
If Not WindowOne Is Nothing Then
  'object is available here
End If