【问题标题】:How to open a window from the same solution?如何从相同的解决方案打开一个窗口?
【发布时间】:2012-03-25 05:33:25
【问题描述】:

我有一个带按钮的 MainWindow,在按钮单击事件下,我希望 MainWindow 打开 Window1,这是我事先创建的另一个窗口。最简单的方法是什么?此外,我在 Window1 中有一个画布,我想在单击按钮时显示一个页面 (Page1)。

【问题讨论】:

    标签: wpf vb.net


    【解决方案1】:

    如果'我明白你的问题,然后acc。对我来说:

    MainWindow.vb - 为 Button 的 Click 事件创建处理程序

    Public Sub Button_Click ( ... )
    
        Dim window1 as new Window1(True) ' Create Window1 with isMainWindow = true and display it as a dialog.
        window1.ShowDialog()
    
    End Sub
    

    Window1.vb - 创建一个 bool 属性以检查是否由 MainWindow 以 isMainWindow = true 启动。

    Public Sub New(isMainWindow As Boolean)
        ...
        If (isMainWindow) Then
            MyCanvas.Children.Add(new Page1());
        End If
        ...
    End Public
    

    【讨论】:

    • 这对我不起作用。我确实意识到我应该使用网格(我认为)而不是画布,但随后我又完全遇到了另外几个错误。
    • 但是你为什么要在画布上添加页面,cavas 通常用于图形相关的东西?什么错误?
    • Private Sub btnCyl_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles btnCyl.Click Greg.Children.Clear() Greg.Children.Add(CylPage) End Sub Private Sub btnMix_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles btnMix.Click Greg.Children.Clear() Greg.Children.Add(MixPage) End Sub
    • 我现在使用网格而不是画布。我有错误“MixPage 是一种类型,不能用作表达式”。不过对 CylPage 来说没问题。
    • 好吧,把这个Greg.Children.Add(MixPage)改成Greg.Children.Add(New MixPage)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-03
    • 1970-01-01
    相关资源
    最近更新 更多