本文主要是介绍WPF使用Prism实现简单订餐系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
新建wpf项目,nuget引入Prism.DryIoc,MaterialDesignThemes
引入后,修改App.xaml 前台引入 xmlns:prism="http://prismlibrary.com/"和prism:PrismApplication App.xaml.cs
App.xaml.cs继承PrismApplication,重写CreateShell和RegisterTypes
protected override Window CreateShell(){return Container.Resolve<MainWindow>();}protected override void RegisterTypes(IContainerRegistry containerRegistry){}
MainWindowViewModel继承BindableBase,实现mvvm
上面步骤,同样可以通过新建prism 项目,自动引入引入了prism
在model中新建属性,实现属性自动通知功能
private double _total;public double Total{get { return _total; }set{_total = value;RaisePropertyChanged();}}
前台绑定
<TextBox VerticalAlignment="Center" x:Name="Total" Text="{Binding Total}" Width="70" Margin="4 0 0 0" TextAlignment="Center" BorderThickness="0 0 0 2"></TextBox>
新建Command
public DelegateCommand SelCommand { get; set; }
在构造函数中,绑定委托方法
SelCommand = new DelegateCommand(()=> {
SelectDish();
DispAllSelect();
});
如果方法带有参数,可以使用DelegateCommand<T>泛型声明
前台绑定控件Command属性调用
<CheckBox IsChecked="{Binding IsSelected,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}" Command="{Binding DataContext.SelCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" ></CheckBox>
最后实现简单的Order系统
代码地址:
这篇关于WPF使用Prism实现简单订餐系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!