Files
Store.Management/Source/Store.Management.Framework/Controls/ViewModelBase.cs
T
2026-11-13 15:51:16 +08:00

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() { }
}