mirror of
https://github.com/BeyondDimension/SteamTools.git
synced 2026-10-21 17:13:09 +08:00
39 lines
1.0 KiB
C#
39 lines
1.0 KiB
C#
using ReactiveUI;
|
|
using System.Application.Mvvm;
|
|
|
|
namespace System.Application.UI.ViewModels
|
|
{
|
|
public class ViewModelBase : ReactiveObject, IDisposable, ILocalizationViewModel
|
|
{
|
|
[NonSerialized] CompositeDisposable? _compositeDisposable;
|
|
|
|
[NonSerialized] bool _disposed;
|
|
|
|
public ViewModelBase()
|
|
{
|
|
ILocalizationViewModel localization = this;
|
|
localization.OnChangeLanguage();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 是否在设计器的上下文中运行
|
|
/// </summary>
|
|
public static bool IsInDesignMode { get; set; }
|
|
|
|
/// <summary>
|
|
/// 释放该实例使用的所有资源
|
|
/// </summary>
|
|
public void Dispose()
|
|
{
|
|
Dispose(true);
|
|
GC.SuppressFinalize(this);
|
|
}
|
|
|
|
protected virtual void Dispose(bool disposing)
|
|
{
|
|
if (_disposed) return;
|
|
if (disposing) _compositeDisposable?.Dispose();
|
|
_disposed = true;
|
|
}
|
|
}
|
|
} |