알림 속성 변경 메카니즘의 INC<T>
버전을 사용하려고했는데 이는 Property + Field + RaisePropertyChanged 버전보다 훨씬 간결합니다.FieldBinding 및 약한 참조
하지만, 나는이 ViewModel에 있다고 가정 해 봅시다 : 내 안드로이드 활동에서 오전 가정 해 봅시다 지금
public abstract class PageViewModel : MvxViewModel
{
/// <summary>
/// The is loading
/// </summary>
public readonly INC<bool> IsLoading = new NC<bool>();
/// <summary>
/// The subtitle
/// </summary>
public readonly INC<string> Subtitle = new NC<string>();
/// <summary>
/// The title
/// </summary>
public readonly INC<string> Title = new NC<string>();
을, 나는 이러한 속성에 가입하고자 할 :
public partial class MainView : IFragmentHost
{
private void Subscribe(PageViewModel viewModel)
{
viewModel.Title.Changed += (xx) => Whatever;
}
을 두 번째에 하지만, 그렇게 그들에게 WeakSubscribe 것이 좋을 것이다 :
viewModel.Title.WeakSubscri...
Mmmmh 이상, 나는 아무런 자동 완성이 없다 그.
public static class MvxWeakSubscriptionExtensionMethods
{
public static MvxNotifyPropertyChangedEventSubscription WeakSubscribe(this INotifyPropertyChanged source, EventHandler<PropertyChangedEventArgs> eventHandler)
{
return new MvxNotifyPropertyChangedEventSubscription(source, eventHandler);
}
public static MvxValueEventSubscription<T> WeakSubscribe<T>(this EventInfo eventInfo, object source, EventHandler<MvxValueEventArgs<T>> eventHandler)
{
return new MvxValueEventSubscription<T>(source, eventInfo, eventHandler);
}
그리고 이제 INC<T>
public interface INC<T> : INotifyChange<T>, INotifyChange
그래서하는 INC<T>
특성에 가입 약한 방법이있다 :