using Prism.Mvvm; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace PDF_Office.Model.HomePageToolsDialogs { public class HomePageSplitDialogModel:BindableBase { /// /// 拆分模式 /// public SplitMode Mode = SplitMode.AveragePages; /// /// 拆分模式份数或者页数 /// public int GetModeCount = 1; /// /// 页面信息 /// public string PageRange = "1,3-4,10"; /// /// 文件名标签 /// private string fileNameLabel = "part"; public string FileNameLabel { get { return fileNameLabel; } set { SetProperty(ref fileNameLabel, value); RefreshFileName(); } } private bool hasLabel = true; /// /// 是否含有标签 /// public bool HasLabel { get { return hasLabel; } set { SetProperty(ref hasLabel, value); RefreshFileName(); } } /// /// 文件名与标签分隔符 /// private string fileNameDeimiter="-"; public string FileNameDeimiter { get { return fileNameDeimiter; } set { SetProperty(ref fileNameDeimiter, value); RefreshFileName(); } } private bool hasDeimiter = true; /// /// 是否含有分隔符 /// public bool HasDeimiter { get { return hasDeimiter; } set { SetProperty(ref hasDeimiter, value); RefreshFileName(); } } /// /// 文件名与标签分隔符 /// public bool FrontFileName = true; /// /// 页码 存入页码范围; /// public List PageParm = new List { }; /// /// 文件名; /// private string fileName = ""; public string FileName { get { return fileName; } set { SetProperty(ref fileName, value); } } private bool isSourceNameFront = true; /// /// 原始文档名前置 /// public bool IsSourceNameFront { get { return isSourceNameFront; } set { SetProperty(ref isSourceNameFront, value); RefreshFileName(); } } private string sourceName; /// /// 原始文件名 /// public string SourceFileName { get { return sourceName; } set { SetProperty(ref sourceName, value); RefreshFileName(); } } /// /// 刷新文件名 /// public void RefreshFileName() { string label = HasLabel ? FileNameLabel : ""; string deimiter = hasDeimiter ? FileNameDeimiter : ""; if(isSourceNameFront) { FileName = SourceFileName + deimiter + label + ".pdf"; } else { FileName = label + deimiter + SourceFileName + ".pdf"; } } public enum SplitMode { /// /// 按页平均拆分 /// AveragePages, /// /// 按文件平均拆分 /// AverageFiles, /// /// 自定义页码范围拆分 /// CustomPageRange } } }