Я новичок в wpf.I есть два окна, такие как window1 и window2. У меня есть одна кнопка в окне1. если я нажму эту кнопку, откроется окно2. что я должен делать для этого. Вот код, который я пробовал.
window2.show();
Я новичок в wpf.I есть два окна, такие как window1 и window2. У меня есть одна кнопка в окне1. если я нажму эту кнопку, откроется окно2. что я должен делать для этого. Вот код, который я пробовал.
window2.show();
Напишите свой код в window1
.
private void Button_Click(object sender, RoutedEventArgs e)
{
window2 win2 = new window2();
win2.Show();
this.Close();
}
Вам нужно создать новое приложение WPF. После этого вы должны иметь файл .xaml и файл .cs. Они представляют ваше главное окно. Создайте дополнительный файл .xaml и .cs для представления вашего дополнительного окна.
MainWindow.xaml
<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>
MainWindow.xaml.cs
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();
}
В WPF у нас есть пара опций, используя метод Show() и ShowDialog(). Ну, если вы хотите закрыть открытое окно, когда откроется новое окно, вы можете использовать метод Show()
Window1 win1 = new Window1();
win1.Show();
win1.Close();
ShowDialog() также открывает окно, но в этом случае вы не можете закрыть ранее открытое окно.
Предполагая, что второе окно определено как public partial class Window2 : Window
, вы можете сделать это:
Window2 win2 = new Window2();
win2.Show();
Вы можете создать кнопку в окне1 и дважды щелкнуть по ней. Он создаст новый обработчик Click, внутри которого вы можете написать что-то вроде этого:
var window2 = new Window2();
window2.Show();
Вам нужно будет создать экземпляр нового окна.
var window2 = new Window2();
Как только у вас есть экземпляр, вы можете использовать Show() или ShowDialog() в зависимости от того, что вы хотите сделать.
window2.Show();
или
var result = window2.ShowDialog();
ShowDialog() вернет Nullable<bool>
, если вам это нужно.
Это помогло мне: Метод Owner в основном привязывает окно к другому окну, если вам нужны дополнительные окна с теми же.
LoadingScreen lc = new LoadingScreen();
lc.Owner = this;
lc.Show();
Подумайте об этом.
this.WindowState = WindowState.Normal;
this.Activate();
вы можете использовать этот код, надеюсь, вам помогут
private void OnClickNavigate(object sender, RoutedEventArgs e)
{
NavigatedWindow navigatesWindow = new NavigatedWindow();
navigatesWindow.ShowDialog();
}
Спасибо:)