csharp System.Windows.FrameworkElement.BindingGroup类(方法)实例源码

下面列出了csharp System.Windows.FrameworkElement.BindingGroup 类(方法)源码代码实例,从而了解它的用法。

作者:.NET开发    项目:System.Window   
public class Type1
{
    public string PropertyA { get; set; }

    public Type1()
    {
        PropertyA = "Default Value";
    }
}

public class Type2
{
    public string PropertyB { get; set; }

    public Type2()
    {
    }
}

public class BindingGroupValidationRule : ValidationRule
{
    public override ValidationResult Validate(object value, System.Globalization.CultureInfo cultureInfo)
    {
        BindingGroup bg = value as BindingGroup;

        Type1 object1 = null;
        Type2 object2 = null;

        foreach (object item in bg.Items)
        {
            if (item is Type1)
            {
                object1 = item as Type1;
            }

            if (item is Type2)
            {
                object2 = item as Type2;
            }
        }

        if (object1 == null || object2 == null)
        {
            return new ValidationResult(false, "BindingGroup did not find source object.");
        }

        string string1 = bg.GetValue(object1, "PropertyA") as string;
        string string2 = bg.GetValue(object2, "PropertyB") as string;

        if (string1 != string2)
        {
            return new ValidationResult(false, "The two strings must be identical.");
        }

        return ValidationResult.ValidResult;
    }
}

作者:.NET开发    项目:System.Window   
private void Button_Click(object sender, RoutedEventArgs e)
{
    sp1.BindingGroup.UpdateSources();
}


问题


面经


文章

微信
公众号

扫码关注公众号