[原] XAF 一个字段的值改变则另一个字段值也改变的实现

方法一:

protected override void OnChanged(string propertyName, object oldValue, object newValue)
{
    base.OnChanged(propertyName, oldValue, newValue);
    if ((!IsLoading) && (!IsDeleted) && (oldValue != newValue))
    {
        if (propertyName == "ItemA")
        {
            // todo
        }
    }
}

方法二:

public partial class MyViewController : ViewController
{
    public MyViewController()
    {
        InitializeComponent();
        RegisterActions(components);
    }

    protected override void OnActivated()
    {
        base.OnActivated();
        ((View as DetailView).FindItem("ItemA"as PropertyEditor).ValueStored += new EventHandler(MyViewController _ValueStored);
    }

    void MyViewController _ValueStored(object sender, EventArgs e)
    {
        ((View as DetailView).FindItem("ItemB"as ListPropertyEditor).Refresh();
    }

    protected override void OnDeactivated()
    {
        ((View as DetailView).FindItem("ItemA"as PropertyEditor).ValueStored -= new EventHandler(MyViewController _ValueStored);
        base.OnDeactivated();
    }
}

 欢迎转载,转载请注明出处:http://www.cnblogs.com/Tonyyang/

原文地址:https://www.cnblogs.com/Tonyyang/p/2279033.html