我是MVVM的新手。我试图创建一个简单的对话框,但遇到了问题。我创建了一个CustomerViewModel
和一个CustomerView
。我将Datacontext
设置为视图模型。
但是在showdialog()
之后会打开一个空对话框。
以下是详细信息:
public class MainWindowViewModel: ViewModelBase
{
....
public void OpenCommandExecute(object o)
{
var win = new Window();
win.Width = 500;
win.Height = 500;
win.WindowStartupLocation = WindowStartupLocation.CenterScreen;
win.DataContext = new CreateCustomerViewModel();
if (win.ShowDialog() == true)
{
}
}
}
App.XAML
<Application.Resources>
<DataTemplate DataType="{x:Type ViewModel:CreateCustomerViewModel}">
<View:CreateCustomerView/>
</DataTemplate>
</Application.Resources>
CreateCustomerViewModel
public class CreateCustomerViewModel : ViewModelBase
{
}
CreateCustomerView
<UserControl x:Class="WpfApplication1.View.CreateCustomerView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:ViewModel="clr-namespace:WpfApplication1.ViewModels"
mc:Ignorable="d"
d:DataContext="{d:DesignInstance ViewModel:CreateCustomerViewModel}">
<Button Content="Button" HorizontalAlignment="Left" Margin="260,176,0,0" VerticalAlignment="Top" Width="75"/>
</UserControl>