コード例 #1
0
ファイル: Area.cs プロジェクト: jonishzx/Clover
 public virtual void SetXmlNode(XmlNode areaNode)
 {
     ID        = XmlUtility.getNodeAttributeStringValue(areaNode, "id");
     DataTable = XmlUtility.getNodeAttributeStringValue(areaNode, "datatable");
     Row       = XmlUtility.getNodeAttributeIntValue(areaNode, "row");
     Column    = XmlUtility.getNodeAttributeIntValue(areaNode, "col");
 }
コード例 #2
0
ファイル: WorksheetBase.cs プロジェクト: jonishzx/Clover
        public WorksheetBase(XmlNode worksheetNode)
        {
            ID     = XmlUtility.getNodeAttributeStringValue(worksheetNode, "id");
            Name   = XmlUtility.getNodeAttributeStringValue(worksheetNode, "name");
            Title  = XmlUtility.getNodeAttributeStringValue(worksheetNode, "title");
            Row    = XmlUtility.getNodeAttributeIntValue(worksheetNode, "row");
            Column = XmlUtility.getNodeAttributeIntValue(worksheetNode, "col");

            Areas            = GetAreas(worksheetNode);
            HSSFSheetXmlNode = worksheetNode;
        }
コード例 #3
0
        public DataFieldBase(XmlNode dataFieldNode, Area area)
        {
            ID          = XmlUtility.getNodeAttributeStringValue(dataFieldNode, "id");
            Field       = XmlUtility.getNodeAttributeStringValue(dataFieldNode, "field");
            DataType    = GetDataType(dataFieldNode);
            ValueConfig = XmlUtility.getNodeAttributeStringValue(dataFieldNode, "value");
            ValueSource = GetValueSource(dataFieldNode);
            Match       = XmlUtility.getNodeAttributeStringValue(dataFieldNode, "match");


            Area = area;
        }
コード例 #4
0
ファイル: RepeatArea.cs プロジェクト: jonishzx/Clover
        protected List <string> GetMergeColumns(XmlNode areaNode)
        {
            string mergeColumns = XmlUtility.getNodeAttributeStringValue(areaNode, "mergecolumns");

            if (string.IsNullOrEmpty(mergeColumns))
            {
                return(new List <string>());
            }
            string[] list = mergeColumns.Split(',');
            if (list != null)
            {
                return(list.ToList());
            }
            else
            {
                return(new List <string>());
            }
        }
コード例 #5
0
        protected ValueSourceEnums GetValueSource(XmlNode dataFieldNode)
        {
            string valueSource = XmlUtility.getNodeAttributeStringValue(dataFieldNode, "valuesource");

            switch ((valueSource + "").ToLower())
            {
            case "field":
                return(ValueSourceEnums.Field);

            case "method":
                return(ValueSourceEnums.Method);

            case "property":
                return(ValueSourceEnums.Property);

            case "constant":
            default:
                return(ValueSourceEnums.Constant);
            }
        }
コード例 #6
0
        protected DataTypeEnums GetDataType(XmlNode dataFieldNode)
        {
            string dataType = XmlUtility.getNodeAttributeStringValue(dataFieldNode, "datatype", "");

            switch (dataType.ToLower())
            {
            case "numeric":
                return(DataTypeEnums.Numeric);

            case "datetime":
                return(DataTypeEnums.DateTime);

            case "boolean":
                return(DataTypeEnums.Boolean);

            case "formula":
                return(DataTypeEnums.Formula);

            case "string":
            default:
                return(DataTypeEnums.String);
            }
        }
コード例 #7
0
ファイル: RepeatArea.cs プロジェクト: jonishzx/Clover
        protected Dictionary <string, bool> GetMergeTop(XmlNode areaNode)
        {
            Dictionary <string, bool> dict = new Dictionary <string, bool>();

            string mergeTopStr = XmlUtility.getNodeAttributeStringValue(areaNode, "mergetop");

            if (string.IsNullOrEmpty(mergeTopStr))
            {
                foreach (string mergeColumnID in MergeColumns)
                {
                    dict.Add(mergeColumnID, false);
                }

                return(dict);
            }

            string[] mergeTops = mergeTopStr.Split(',');
            if (mergeTops.Length != MergeColumns.Count)
            {
                throw new Exception("MergeTop和MergeColumns配置的数量不匹配");
            }

            for (int iLoop = 0; iLoop < mergeTops.Length; iLoop++)
            {
                string mergeTop = mergeTops[iLoop];

                if (mergeTop.ToLower() == "true")
                {
                    dict.Add(MergeColumns[iLoop], true);
                }
                else
                {
                    dict.Add(MergeColumns[iLoop], false);
                }
            }
            return(dict);
        }