using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Text; using System.Linq; using System.Threading.Tasks; using System.Windows.Forms; using DevExpress.XtraEditors; namespace IStation.WinFormUI { public partial class DocumentPage : DevExpress.XtraEditors.XtraUserControl { public DocumentPage() { InitializeComponent(); } public DocumentPage(SurfaceGuid surfaceGuid) { InitializeComponent(); this.PageTitle = new PageTitle(); this.SurfaceGuid = surfaceGuid; } /// /// 加载菜单事件 /// public event Action> LoadPageMenuEvent; protected void LoadPageMenu(SurfaceGuid sguid, List menus) { this.LoadPageMenuEvent?.Invoke(sguid, menus); } /// /// 根据字符串判断Document是否存在, /// 第一个参数为SurfaceGuid参数类 /// 第二个参数如果页面存在是否激活页面 /// 第三个参数 存在则激活并返回TRUE,不存在返回FALSE /// public event Func IsExistPageEvent; protected bool IsExistPage(SurfaceGuid sguid, bool isActivateDoc) { if (this.IsExistPageEvent != null) return this.IsExistPageEvent(sguid, isActivateDoc); return false; } /// /// 查找Page /// public event Func FindPageEvent; protected DocumentPage FindPage(SurfaceGuid sguid, bool isActivateDoc) { if (this.FindPageEvent != null) return this.FindPageEvent(sguid, isActivateDoc); return null; } /// /// 创建Page /// public event Func CreatePageEvent; protected bool CreatePage(DocumentPage page, SurfaceGuid sguid) { if (this.CreatePageEvent != null) return CreatePageEvent(page, sguid); return false; } /// /// 更新数据事件 /// 第一个参数为SurfaceGuid /// public event Action RefreshPageDataEvent; protected void RefreshPageData(SurfaceGuid sguid) { this.RefreshPageDataEvent?.Invoke(sguid); } /// /// 更新PageTitle事件 /// public event Action UpdatePageTitleEvent; protected void UpdatePageTitle(SurfaceGuid sguid, PageTitle title) { this.UpdatePageTitleEvent?.Invoke(sguid, title); } /// /// 关闭Page事件 /// public event Action ClosePageEvent; protected void ClosePage(SurfaceGuid sguid) { this.ClosePageEvent?.Invoke(sguid); } /// /// 重置所有页面事件 /// public event Action ResetAllPagesEvent; protected void ResetAllPages() { this.ResetAllPagesEvent?.Invoke(); } /// /// 头部部分 /// public PageTitle PageTitle { get; set; } = new PageTitle(); /// /// 自身标识 /// public SurfaceGuid SurfaceGuid { get; set; } /// /// 初始化数据 /// public virtual void InitialDataSource() { } /// /// 刷新数据 /// public virtual void RefreshDataSource() { } /// /// 关闭时调用 /// public virtual void Close() { } /// /// 是否可以关闭 /// public virtual bool CanClose() { return true; } /// /// 注册事件 /// public virtual void RegistEvents() { } /// /// 取消注册事件 /// public virtual void UnRegistEvents() { } } }