コード例 #1
0
 public static void ToXml(IRtWidget rtWidget, Object parent, XmlElement baseElem, String fieldName, int detailLevel)
 {
     if (detailLevel > 0)
     {
         XmlElement widgetElem = VarValue.AppendChild(baseElem, "Widget");
         if (rtWidget.Id != null)
         {
             VarValue.AppendAttribute(widgetElem, "Id", rtWidget.Id, TypeKind.Text);
         }
         rtWidget.InnerToXml(widgetElem, detailLevel);
         if (rtWidget.Control != null)
         {
             VarValue.InvokeToXml(rtWidget.Control, parent, widgetElem, fieldName, detailLevel);
         }
     }
     else
     {
         VarValue.AppendDeferredEvaluationElement(baseElem);
     }
 }
コード例 #2
0
        public static void EvaluateFields(IRtWidget rtWidget, VarValue variable, Object parent, String baseName, String fields)
        {
            String head = VarValue.GetHead(fields);
            String tail = VarValue.GetTail(fields);

            variable.Found = false;
            if (rtWidget.Id != null)
            {
                if (head == "id")
                {
                    variable.Value = rtWidget.Id;
                }
            }
            rtWidget.InnerEvaluateField(variable, head);
            if (!variable.Found && rtWidget.Control != null)
            {
                variable.InvokeEvaluateFields(rtWidget.Control, baseName, fields);
            }
            if (variable.Found && tail != null)
            {
                variable.EvaluateFields(rtWidget, head, tail);
            }
        }