【问题标题】:MvvmCross RaisePropertyChanged and dot (.) bindingMvvmCross RaisePropertyChanged 和点 (.) 绑定
【发布时间】:2015-09-03 23:34:13
【问题描述】:

我有一个接受整个视图模型的自定义绑定:

public class TextViewGroupInfoBinding : BaseBinding<TextView, GroupViewModel>
{
    private IMvxAndroidCurrentTopActivity CurrentTopActivity
    {
        get { return ServiceLocator.Current.GetInstance<IMvxAndroidCurrentTopActivity>(); }
    }
    public TextViewGroupInfoBinding(TextView androidControl) : base(androidControl)
    {
    }

    public override MvxBindingMode DefaultMode
    {
        get { return MvxBindingMode.OneWay; }
    }

    protected override void SetValueToView(TextView control, GroupViewModel value)

在 UI 上绑定它使用MvxBind="BgColor ." 语法。我怎样才能从我的ViewModel 激起PropertyChanged 事件以使绑定做出反应?尝试RaiseAllPropertiesChanged 没有运气。

【问题讨论】:

    标签: c# binding xamarin mvvmcross


    【解决方案1】:

    尝试将“Self”属性添加到您的 ViewModel 或 View,它会返回自身。然后只需绑定到该属性而不是点 (.) 语法:

    public MyViewModel Self
    {
        get { return this; }
    }
    

    希望对你有帮助

    【讨论】:

    • 这是一个非常优雅的解决方案。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-18
    • 2013-10-17
    • 2014-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多