mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 11:14:30 +08:00
- 将所有文件中的命名空间GFramework替换为GWFramework - 更新项目文件GFramework.csproj中的包ID和产品名称为GWFramework - 修改解决方案文件GFramework.sln中项目的引用名称为GWFramework - 替换LazyThreadSafetyMode的完整命名空间引用 - 统一调整各模块间相互引用的命名空间前缀
38 lines
1.2 KiB
C#
38 lines
1.2 KiB
C#
using System;
|
|
using GWFramework.framework.events;
|
|
|
|
namespace GWFramework.framework.property;
|
|
|
|
|
|
/// <summary>
|
|
/// 只读可绑定属性接口,提供属性值的读取和变更监听功能
|
|
/// </summary>
|
|
/// <typeparam name="T">属性值的类型</typeparam>
|
|
public interface IReadonlyBindableProperty<out T> : IEasyEvent
|
|
{
|
|
/// <summary>
|
|
/// 获取属性的当前值
|
|
/// </summary>
|
|
T Value { get; }
|
|
|
|
/// <summary>
|
|
/// 注册属性值变更回调,并立即执行一次初始值的回调
|
|
/// </summary>
|
|
/// <param name="action">属性值变更时执行的回调函数,参数为新的属性值</param>
|
|
/// <returns>用于取消注册的句柄对象</returns>
|
|
IUnRegister RegisterWithInitValue(Action<T> action);
|
|
|
|
/// <summary>
|
|
/// 取消注册属性值变更回调
|
|
/// </summary>
|
|
/// <param name="onValueChanged">要取消注册的回调函数</param>
|
|
void UnRegister(Action<T> onValueChanged);
|
|
|
|
/// <summary>
|
|
/// 注册属性值变更回调
|
|
/// </summary>
|
|
/// <param name="onValueChanged">属性值变更时执行的回调函数,参数为新的属性值</param>
|
|
/// <returns>用于取消注册的句柄对象</returns>
|
|
IUnRegister Register(Action<T> onValueChanged);
|
|
}
|