我是WPF的新手。我有两个窗口,例如window1和window2。在window1中有一个按钮。如果我点击这个按钮,就要打开window2。我该怎么做呢?
这是我尝试过的代码:
window2.show();
请在window1
中编写您的代码。
private void Button_Click(object sender, RoutedEventArgs e)
{
window2 win2 = new window2();
win2.Show();
}
创建新的WPF应用程序时,您应该有一个.xaml文件和一个.cs文件,这代表您的主窗口。创建一个附加的.xaml文件和.cs文件来表示您的子窗口。
<Window x:Class="WpfApplication2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Button Content="Open Window" Click="ButtonClicked" Height="25" HorizontalAlignment="Left" Margin="379,264,0,0" Name="button1" VerticalAlignment="Top" Width="100" />
</Grid>
</Window>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void ButtonClicked(object sender, RoutedEventArgs e)
{
SubWindow subWindow = new SubWindow();
subWindow.Show();
}
}
然后在这些类中添加您需要的任何其他代码:
SubWindow.xaml
SubWindow.xaml.cs
private void button1_Click(object sender, RoutedEventArgs e)
{
window2 win2 = new window2();
win2.Show();
}
LoadingScreen lc = new LoadingScreen();
lc.Owner = this;
lc.Show();
this.WindowState = WindowState.Normal;
this.Activate();
public partial class Window2 : Window
,您可以通过以下方式实现:Window2 win2 = new Window2();
win2.Show();
Window1 win1 = new Window1();
win1.Show();
win1.Close();
ShowDialog()同样会打开一个窗口,但是在这种情况下,你不能关闭之前已经打开的窗口。
您可以在window1中创建一个按钮,然后双击它。这将创建一个新的点击处理程序,在其中您可以编写类似以下内容的代码:
var window2 = new Window2();
window2.Show();
var window2 = new Window2();
一旦你有了实例,你可以使用Show()或ShowDialog()方法,具体取决于你想要做什么。
window2.Show();
或者
var result = window2.ShowDialog();
ShowDialog()会返回一个Nullable<bool>
,如果需要的话。
private void OnClickNavigate(object sender, RoutedEventArgs e)
{
NavigatedWindow navigatesWindow = new NavigatedWindow();
navigatesWindow.ShowDialog();
}