wpf RelayCommand 切换窗口
时间: 2023-09-08 10:09:34 浏览: 80
在PF 中,可以使用 RelayCommand 来实现 MVVM 模式下的命令绑定。如果要在 RelayCommand 中切换窗口,可以通过以下步骤实现:
1. 首先,在 ViewModel 中定义一个 RelayCommand 对象,用于处理窗口切换命令。
```csharp
public RelayCommand SwitchWindowCommand { get; set; }
```
2. 在 ViewModel 的构造函数中初始化 SwitchWindowCommand。
```csharp
public MyViewModel()
{
SwitchWindowCommand = new RelayCommand(SwitchWindow);
}
```
3. 在 SwitchWindow 方法中实现窗口切换逻辑。可以使用 WPF 中的 NavigationService 或者直接创建一个新的窗口实例来切换窗口。
```csharp
private void SwitchWindow()
{
// 使用 NavigationService 切换窗口
NavigationService.Navigate(new Uri("MyWindow.xaml", UriKind.Relative));
// 或者创建一个新的窗口实例并显示
MyWindow window = new MyWindow();
window.Show();
}
```
4. 在 XAML 中绑定按钮的 Command 属性到 SwitchWindowCommand。
```xaml
<Button Content="Switch Window" Command="{Binding SwitchWindowCommand}"/>
```
这样就可以通过按钮点击来触发 SwitchWindow 方法,实现窗口切换功能了。
阅读全文