Ejemplo n.º 1
0
        /// <summary>
        /// 获取绑定目标
        /// </summary>
        /// <param name="bindingHost">绑定宿主</param>
        /// <returns>绑定目标</returns>
        public virtual IBindingTarget GetTarget(IHtmlDomObject bindingHost)
        {
            var attribute = bindingHost as IHtmlAttribute;

            if (attribute != null)
            {
                if (MarkupAttribute(attribute))
                {
                    return(new MarkupAttributeBidningTarget(attribute));
                }

                else
                {
                    return(new TextAttributeBindingTarget(attribute));
                }
            }

            var element = bindingHost as IHtmlElement;

            if (element != null)
            {
                return(new TextElementBindingTarget(element));
            }

            throw new NotSupportedException();
        }
Ejemplo n.º 2
0
        private static IHtmlDomModifier EnsureModifiable(IHtmlDomObject domObject)
        {
            if (domObject == null)
            {
                throw new ArgumentNullException("domObject");
            }


            var document = domObject.Document;

            if (document == null)
            {
                throw new InvalidOperationException("无法修改不在 DOM 上的节点");
            }

            var modifier = document.DomModifier;

            if (modifier == null)
            {
                throw new NotSupportedException("文档不支持修改 DOM 结构");
            }

            return(modifier);
        }
Ejemplo n.º 3
0
 public Binding( IHtmlDomObject bindingHost, IDictionary<string, string> args )
 {
   BindingHost = bindingHost;
   _arguments = args;
 }
Ejemplo n.º 4
0
 public Binding(IHtmlDomObject bindingHost, IDictionary <string, string> args)
 {
     BindingHost = bindingHost;
     _arguments  = args;
 }
Ejemplo n.º 5
0
 /// <summary>
 /// 获取绑定器
 /// </summary>
 /// <param name="bindingHost">绑定宿主</param>
 /// <param name="binderName">绑定器名称</param>
 /// <returns>绑定器</returns>
 public virtual IValueBinder GetValueBinder(IHtmlDomObject bindingHost, string binderName = null)
 {
     return(null);
 }
Ejemplo n.º 6
0
    /// <summary>
    /// 获取绑定目标
    /// </summary>
    /// <param name="bindingHost">绑定宿主</param>
    /// <returns>绑定目标</returns>
    public virtual IBindingTarget GetTarget( IHtmlDomObject bindingHost )
    {
      var attribute = bindingHost as IHtmlAttribute;

      if ( attribute != null )
      {
        if ( MarkupAttribute( attribute ) )
          return new MarkupAttributeBidningTarget( attribute );

        else
          return new TextAttributeBindingTarget( attribute );
      }

      var element = bindingHost as IHtmlElement;
      if ( element != null )
        return new TextElementBindingTarget( element );

      throw new NotSupportedException();

    }
Ejemplo n.º 7
0
 /// <summary>
 /// 获取绑定器
 /// </summary>
 /// <param name="bindingHost">绑定宿主</param>
 /// <param name="binderName">绑定器名称</param>
 /// <returns>绑定器</returns>
 public virtual IValueBinder GetValueBinder( IHtmlDomObject bindingHost, string binderName = null )
 {
   return null;
 }