public BindingNode(XElement xElement, string elementName, BindingAssignment bindingAssignment, int id, bool isEnabled)
 {
     this.TargetElement     = xElement;
     this.TargetElementName = elementName;
     this.BindingAssignment = bindingAssignment;
     this.Id        = id;
     this.IsEnabled = isEnabled;
 }
Esempio n. 2
0
 public DataContextTargetBindingNode(
     XElement targetElement,
     string elementName,
     BindingAssignment bindingAssignment,
     int id,
     IReadOnlyList <IBinding> bindings,
     bool isEnabled)
 {
     this.TargetElement     = targetElement;
     this.TargetElementName = elementName;
     this.BindingAssignment = bindingAssignment;
     this.Id        = id;
     this.Bindings  = bindings;
     this.IsEnabled = isEnabled;
 }
        public static TargetValueCodeGenerator GetTarget(QualifiedType elementType, BindingAssignment bindingAssignment, XamlTypeResolver xamlTypeResolver, TypeResolver typeResolver)
        {
            var property     = bindingAssignment.TargetProperty.Name.ToString();
            var lastDotIndex = property.LastIndexOf('.');

            if (lastDotIndex > -1)
            {
                var   propertyName = property.Substring(lastDotIndex + 1);
                XName xamlTypeName = property.Substring(0, lastDotIndex);
                var   ownerType    = xamlTypeResolver.Parse(xamlTypeName);
                return(new TargetValueCodeGenerator(ownerType, typeResolver.GetAttachedDependencyProperty(ownerType, propertyName), true));
            }

            return(new TargetValueCodeGenerator(elementType, typeResolver.GetProperty(elementType, bindingAssignment.TargetProperty.Name.LocalName), false));
        }
Esempio n. 4
0
 public BindingXamlModification(int bindingId, BindingAssignment bindingAssignment, XamlElementNameProvider xamlElementNameProvider)
 {
     this.bindingId               = bindingId;
     this.bindingAssignment       = bindingAssignment;
     this.xamlElementNameProvider = xamlElementNameProvider;
 }