29 lines
810 B
C#
29 lines
810 B
C#
using Prism.Mvvm;
|
|
using System.ComponentModel;
|
|
|
|
namespace Store.Management.Framework.Controls;
|
|
|
|
public abstract class ViewModelBase : BindableBase
|
|
{
|
|
private bool hasLoaded;
|
|
|
|
internal void NotifyLoaded()
|
|
{
|
|
if (!hasLoaded)
|
|
{
|
|
hasLoaded = true;
|
|
OnLoadedOnce();
|
|
}
|
|
OnLoaded();
|
|
}
|
|
|
|
/// <summary>当前实例首次加载时调用,先于 OnLoaded。</summary>
|
|
protected virtual void OnLoadedOnce() { }
|
|
protected internal virtual void OnLoaded() { }
|
|
protected internal virtual void OnUnloaded() { }
|
|
protected internal virtual void OnActivated() { }
|
|
protected internal virtual void OnDeactivated() { }
|
|
protected internal virtual void OnClosing(CancelEventArgs e) { }
|
|
protected internal virtual void OnClosed() { }
|
|
}
|