/// <summary>
        /// 编辑文档元素数值
        /// </summary>
        /// <param name="element">文档元素对象</param>
        /// <param name="editor">编辑器对象</param>
        /// <returns>操作是否成功</returns>
        public ElementValueEditResult EditValue(DomElement element, ElementValueEditor editor)
        {
            if (editor == null)
            {
                throw new ArgumentNullException("editor");
            }
            this._ElementInstance = element;
            ElementValueEditContext context = new ElementValueEditContext();

            context.Document     = this.Document;
            context.Element      = element;
            context.PropertyName = null;
            context.Editor       = editor;
            try
            {
                _CurrentEditContext           = context;
                _CurrentEditContext.EditStyle = editor.GetEditStyle(this, context);
                ElementValueEditResult result = editor.EditValue(this, context);
                return(result);
            }
            finally
            {
                _CurrentEditContext = null;
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 获得编辑元素的方式
 /// </summary>
 /// <param name="host">编辑器宿主</param>
 /// <param name="context">编辑上下文对象</param>
 /// <returns>编辑的方式</returns>
 public virtual ElementValueEditorEditStyle GetEditStyle(
     TextWindowsFormsEditorHost host,
     ElementValueEditContext context)
 {
     return(ElementValueEditorEditStyle.None);
 }
Ejemplo n.º 3
0
 /// <summary>
 /// 编辑元素数值
 /// </summary>
 /// <param name="host">编辑器宿主对象</param>
 /// <param name="context">上下文对象</param>
 /// <param name="Value">要编辑的旧数值</param>
 /// <returns>编辑后的新数值</returns>
 public virtual ElementValueEditResult EditValue(
     TextWindowsFormsEditorHost host,
     ElementValueEditContext context)
 {
     return(ElementValueEditResult.None);
 }