我想在WPF应用程序中通过ShowDialog()打开一个Window,它应该在应用程序的MainWindow中正好显示两个控件。
我可以根据X和Y /顶部和左侧正确定位窗口,但我无法获得高度和宽度以匹配下面的控件。窗口总是显得更窄更短。
我使用以下代码:
Private Sub Button_Click_1(sender As Object , e As RoutedEventArgs)
Me.UpdateLayout()
Me.sbmSideBarManager.UpdateLayout()
Me.sbcFolders.UpdateLayout()
Me.sbcFilters.UpdateLayout()
Dim lVisiblePropertiesDialog As New VisiblePropertiesDialog
Dim lSideBarManagerPoint As Point = Me.sbmSideBarManager.TranslatePoint(New Point(0,0), Me.sbmSideBarManager)
Dim lSideBarManagerLocation As Point = Me.sbmSideBarManager.PointToScreen(lSideBarManagerPoint)
lVisiblePropertiesDialog.WindowStartupLocation = Windows.WindowStartupLocation.Manual
lVisiblePropertiesDialog.Top = lSideBarManagerLocation.Y
lVisiblePropertiesDialog.Left = lSideBarManagerLocation.X
lVisiblePropertiesDialog.Height = Me.sbmSideBarManager.ActualHeight
lVisiblePropertiesDialog.Width = (Me.sbcFolders.ActualWidth + Me.sbcFilters.ActualWidth)
lVisiblePropertiesDialog.ShowDialog()
End Sub