首次提交:添加src文件夹代码
This commit is contained in:
96
Cowain.Bake.Common/ViewModelBase.cs
Normal file
96
Cowain.Bake.Common/ViewModelBase.cs
Normal file
@@ -0,0 +1,96 @@
|
||||
using Prism.Commands;
|
||||
using Prism.Mvvm;
|
||||
using Prism.Regions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using Unity;
|
||||
|
||||
namespace Cowain.Bake.Common
|
||||
{
|
||||
public abstract class ViewModelBase : BindableBase
|
||||
{
|
||||
// * 未保存
|
||||
public string PageTitle { get; set; } = "标签标题";
|
||||
public bool IsCanClose { get; set; } = true;
|
||||
|
||||
private string NavUri { get; set; }
|
||||
|
||||
private DateTime date = DateTime.Now.Date;
|
||||
public DateTime Date
|
||||
{
|
||||
get { return date; }
|
||||
set { SetProperty(ref date, value); }
|
||||
}
|
||||
|
||||
private DateTime _startTime = DateTime.Now;
|
||||
public DateTime StartTime
|
||||
{
|
||||
get { return _startTime; }
|
||||
set { SetProperty(ref _startTime, DateTime.Parse(Date.ToString("yyyy-MM-dd") + " " + value.ToString("HH:mm:ss"))); }
|
||||
}
|
||||
|
||||
private DateTime _endTime = DateTime.Now;
|
||||
public DateTime EndTime
|
||||
{
|
||||
get { return _endTime; }
|
||||
set { SetProperty(ref _endTime, DateTime.Parse(Date.ToString("yyyy-MM-dd") + " " + value.ToString("HH:mm:ss"))); }
|
||||
}
|
||||
|
||||
private DateTime _startDateTime = DateTime.Now;
|
||||
public DateTime StartDateTime
|
||||
{
|
||||
get { return _startDateTime; }
|
||||
set { SetProperty(ref _startDateTime, value); }
|
||||
}
|
||||
|
||||
private DateTime _endDateTime = DateTime.Now;
|
||||
public DateTime EndDateTime
|
||||
{
|
||||
get { return _endDateTime; }
|
||||
set { SetProperty(ref _endDateTime, value); }
|
||||
}
|
||||
//条码
|
||||
private string code = string.Empty;
|
||||
public string Code
|
||||
{
|
||||
get { return code; }
|
||||
set { SetProperty(ref code, value); }
|
||||
}
|
||||
public DelegateCommand CloseCommand
|
||||
{
|
||||
get => new DelegateCommand(() =>
|
||||
{
|
||||
// 关闭操作
|
||||
// 根据URI获取对应的已注册对象名称
|
||||
var obj = _unityContainer.Registrations.FirstOrDefault(v => v.Name == NavUri);
|
||||
string name = obj.MappedToType.Name;
|
||||
// 根据对象名称再从Region的Views里面找到对象
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
var region = _regionManager.Regions["MainContentRegion"];
|
||||
var view = region.Views.FirstOrDefault(v => v.GetType().Name == name);
|
||||
// 把这个对象从Region的Views里移除
|
||||
if (view != null)
|
||||
region.Remove(view);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public DelegateCommand RefreshCommand { get => new DelegateCommand(Refresh); }
|
||||
|
||||
protected IUnityContainer _unityContainer;
|
||||
protected IRegionManager _regionManager;
|
||||
public ViewModelBase(IUnityContainer unityContainer, IRegionManager regionManager)
|
||||
{
|
||||
_unityContainer = unityContainer;
|
||||
_regionManager = regionManager;
|
||||
Refresh();
|
||||
}
|
||||
|
||||
public virtual void Refresh() { }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user