//============================================================ // <T>加载设置信息。</T> // // @param xconfig 设置节点 // @author TYFNG 20120409 //============================================================ public override void LoadConfig(FXmlNode xconfig) { base.LoadConfig(xconfig); // 读取透明属性 if (xconfig.Contains("option_alpha")) { _optionAlpha = xconfig.GetBoolean("option_alpha"); } if (xconfig.Contains("alpha_cd")) { _optionAlpha = (xconfig.Get("alpha_cd") == "Able"); } // 读取文件属性 if (xconfig.Contains("option_padding")) { _optionPadding = xconfig.GetBoolean("option_padding"); } // 读取品质类型 _qualityCd = xconfig.Get("quality_cd", _qualityCd); // 读取品质调色板 if (xconfig.Contains("quality_palette")) { _qualityPalette = xconfig.GetInteger("quality_palette"); } // 读取品质透明 if (xconfig.Contains("quality_alpha")) { _qualityAlpha = xconfig.GetInteger("quality_alpha"); } }
//============================================================ // <T>加载设置信息。</T> // // @param xconfig 设置节点 //============================================================ public override void LoadConfig(FXmlNode xconfig) { base.LoadConfig(xconfig); // 读取属性 _optionAlpha = xconfig.GetBoolean("option_alpha", _optionAlpha); _optionPadding = xconfig.GetBoolean("option_padding", _optionPadding); _qualityCd = xconfig.Get("quality_cd", _qualityCd); _qualityPalette = xconfig.GetInteger("quality_palette", _qualityPalette); _qualityAlpha = xconfig.GetInteger("quality_alpha", _qualityAlpha); _frameDelay = xconfig.GetInteger("frame_delay", _frameDelay); // 读取剪辑集合 FXmlNode xclips = xconfig.Find("Clips"); if (xclips != null) { foreach (FXmlNode xnode in xclips.Nodes) { if (xnode.IsName("Clip")) { // 检查参数 if (!xnode.Contains("direction_cd")) { continue; } // 加载剪辑信息 int directionCd = xnode.GetInteger("direction_cd"); FRsResourceClip clip = _clips[directionCd]; if (clip != null) { clip.LoadConfig(xnode); } } } } }
//============================================================ // <T>加载配置信息。</T> // // @param xconfig 配置节点 // @param name 名称 //============================================================ public void LoadConfig(FXmlNode xconfig, string name) { if (xconfig.Contains(name + "_font")) { _font = xconfig.Get(name + "_font"); } if (xconfig.Contains(name + "_color")) { _color = ColorTranslator.FromHtml(xconfig.Get(name + "_color")); } if (xconfig.Contains(name + "_size")) { _size = RInt.Parse(xconfig.Get(name + "_size")); } if (xconfig.Contains(name + "_bold")) { _bold = xconfig.GetBoolean(name + "_bold"); } if (xconfig.Contains(name + "_italic")) { _italic = xconfig.GetBoolean(name + "_italic"); } if (xconfig.Contains(name + "_strikeout")) { _strikeout = xconfig.GetBoolean(name + "_strikeout"); } if (xconfig.Contains(name + "_underline")) { _underline = xconfig.GetBoolean(name + "_underline"); } }
//============================================================ // <T>加载设置节点。</T> // // @param xconfig 配置节点 //============================================================ public override void LoadConfig(FXmlNode xconfig) { base.LoadConfig(xconfig); _color = Color.FromArgb(RInt.ParseHex(xconfig.Get("color"))); _alpha = xconfig.GetFloat("alpha"); _blurX = xconfig.GetInteger("blur_x"); _blurY = xconfig.GetInteger("blur_y"); _strength = xconfig.GetInteger("strength"); _quality = xconfig.GetInteger("quality"); _inner = xconfig.GetBoolean("inner"); _knockout = xconfig.GetBoolean("knockout"); }
//============================================================ // <T>加载设置信息</T> // // @param xconfig 设置信息 //============================================================ public override void OnLoadConfig(FXmlNode xconfig) { base.OnLoadConfig(xconfig); // 加载配置 _optionVisible = xconfig.GetBoolean("option_visible", _optionVisible); _optionEnable = xconfig.GetBoolean("option_enable", _optionEnable); // 加载属性 if (xconfig.Contains("dock_cd")) { _dockCd = (ERcDock)REnum.ToValue(typeof(ERcDock), xconfig.Get("dock_cd")); } // 加载位置 if (xconfig.Contains("location")) { _location.Parse(xconfig.Get("location")); } // 加载尺寸 if (xconfig.Contains("size")) { _size.Parse(xconfig.Get("size")); } // 加载空白 if (xconfig.Contains("margin")) { _margin.Parse(xconfig.Get("margin")); } if (xconfig.Contains("padding")) { _padding.Parse(xconfig.Get("padding")); } // 加载边框 _borderInner.LoadConfig(xconfig, "border_inner"); _borderOuter.LoadConfig(xconfig, "border_outer"); // 加载前景 _foreColor = xconfig.GetHex("fore_color", _foreColor); _foreResource.LoadConfig(xconfig, "fore"); // 加载后景 _backColor = xconfig.GetHex("back_color", _backColor); _backResource.LoadConfig(xconfig, "back"); // 加载事件 _onClick = xconfig.Get("on_click", null); _onDoubleClick = xconfig.Get("on_double_click", null); _onMouseDown = xconfig.Get("on_mouse_down", null); _onMouseUp = xconfig.Get("on_mouse_up", null); _onMouseEnter = xconfig.Get("on_mouse_enter", null); _onMouseMove = xconfig.Get("on_mouse_move", null); _onMouseLeave = xconfig.Get("on_mouse_leave", null); }
//============================================================ // <T>加载设置信息。</T> // // @param xconfig 设置节点 //============================================================ public void LoadConfig(FXmlNode xconfig) { // 读取属性 _isReversed = xconfig.GetBoolean("is_reversed", _isReversed); if (xconfig.Contains("reverse_direction")) { int reverseDirection = xconfig.GetInteger("reverse_direction"); _reverseDirection = IntToDirction(reverseDirection); } _frameDelay = xconfig.GetInteger("frame_delay", _frameDelay); // 读取剪辑集合 FXmlNode xframes = xconfig.Find("Frames"); if (xframes != null) { foreach (FXmlNode xnode in xframes.Nodes) { if (xnode.IsName("Frame")) { int index = xnode.GetInteger("index"); FRsResourceFrame frame = _frames.Get(index, null); if (frame != null) { frame.LoadConfig(xnode); } } } } }
public void LoadConfig(FXmlNode config) { if (config.Contains(PTY_VALID)) { _valid = config.GetBoolean(PTY_VALID); } _id = config[PTY_ID]; _text = config[PTY_TEXT]; // Load children if (config.HasNode()) { foreach (FXmlNode node in config.Nodes) { if (node.IsName(FScheduleTasks.NAME)) { // Load task _tasks.LoadConfig(node); } else if (node.IsName(FScheduleConditions.NAME)) { // Load condition _conditions.LoadConfig(node); } else if (node.IsName(FScheduleEvents.NAME)) { // Load event _events.LoadConfig(node); } } } }
//============================================================ //// <T>获得预览层集合。</T> ////============================================================ //[Browsable(false)] //public FUiControlLayers PreviewLayers { // get { return _previewLayers; } //} //============================================================ // <T>加载设置信息</T> // // @param xconfig 设置信息 //============================================================ public override void OnLoadConfig(FXmlNode xconfig) { base.OnLoadConfig(xconfig); // 加载设计信息 if (xconfig.Contains("design_layers")) { _designLayers = xconfig.GetBoolean("design_layers"); } if (xconfig.Contains("design_back")) { _designBack = xconfig.GetBoolean("design_back"); } if (xconfig.Contains("design_back_color")) { SColor color = new SColor(); color.ParseHex(xconfig.Get("design_back_color")); _designBackColor = Color.FromArgb(color.A, color.R, color.G, color.B); } }
public override void LoadConfig(FXmlNode config) { base.LoadConfig(config); if (config.Contains(PTY_MIN_LENGTH)) { _minLength = config.GetInteger(PTY_MIN_LENGTH); } if (config.Contains(PTY_MAX_LENGTH)) { _maxLength = config.GetInteger(PTY_MAX_LENGTH); } if (config.Contains(PTY_MIN_EQUALS)) { _minEquals = config.GetBoolean(PTY_MIN_EQUALS); } if (config.Contains(PTY_MAX_EQUALS)) { _maxEquals = config.GetBoolean(PTY_MAX_EQUALS); } _description = config[PTY_DESCRIPTION]; }
//============================================================ // <T>加载配置信息。</T> // // @param xconfig 配置节点 //============================================================ public virtual void OnLoadConfig(FXmlNode xconfig) { _className = xconfig.Get("class", _className); _name = xconfig.Get("name", _name); _label = xconfig.Get("label", _label); _optionValid = xconfig.GetBoolean("option_valid", _optionValid); _hint = xconfig.Get("hint", _hint); _note = xconfig.Get("note", _note); // 读取属性集合 if (xconfig.Contains("properties")) { _properties.Parse(xconfig.Get("properties")); } }
public virtual void LoadConfig(FXmlNode config) { if (config.Contains(PTY_TYPE)) { _type = REnum.ToValue <EScheduleConditionType>(config[PTY_TYPE]); } if (config.Contains(PTY_VALID)) { _valid = config.GetBoolean(PTY_VALID); } if (config.Contains(PTY_FILE)) { _fileName = config[PTY_FILE]; } }
//============================================================ // <T>加载设置信息。</T> // // @param xconfig 设置信息 //============================================================ public override void OnLoadConfig(FXmlNode xconfig) { base.OnLoadConfig(xconfig); // 读取数据 _optionHand = xconfig.GetBoolean("option_hand", _optionHand); _validInterval = xconfig.GetInteger("valid_interval", _validInterval); if (xconfig.Contains("text_align_cd")) { _textAlignCd = (ERcTextAlign)REnum.ToValue(typeof(ERcTextAlign), xconfig.Get("text_align_cd")); } _font.LoadConfig(xconfig, "font"); _text = xconfig.Get("text", _text); _groundResource.LoadConfig(xconfig, "ground"); // 读取事件 _onClickControl = xconfig.Get("on_click_control", _onClickControl); }
//============================================================ // <T>加载设置信息</T> // // @param xconfig 设置信息 //============================================================ public override void OnLoadConfig(FXmlNode xconfig) { base.OnLoadConfig(xconfig); // 加载配置 _optionScrollAuto = xconfig.GetBoolean("option_scroll_auto", _optionScrollAuto); //_optionScrollHorizontal = xconfig.GetBoolean("option_scroll_horizontal", _optionScrollHorizontal); //_optionScrollVertical = xconfig.GetBoolean("option_scroll_vertical", _optionScrollVertical); // 加载类型 if (xconfig.Contains("scroll_style_cd")) { _scrollStyleCd = (ERcScrollStyle)REnum.ToValue(typeof(ERcScrollStyle), xconfig.Get("scroll_style_cd")); } if (xconfig.Contains("horizontal_dock")) { _horizontalDockCd = (ERcHorizontalDock)REnum.ToValue(typeof(ERcHorizontalDock), xconfig.Get("horizontal_dock")); } if (xconfig.Contains("vertical_dock")) { _verticalDockCd = (ERcVerticalDock)REnum.ToValue(typeof(ERcVerticalDock), xconfig.Get("vertical_dock")); } }
//============================================================ // <T>加载设置信息</T> // // @param xconfig 设置信息 //============================================================ public override void OnLoadConfig(FXmlNode xconfig) { base.OnLoadConfig(xconfig); // 加载属性 _dataSource = xconfig.Get("data_source", null); _connectionName = xconfig.Get("connection_name"); _parentSource = xconfig.Get("parent_source"); _dataWhere = xconfig.Get("data_where"); _dataOrder = xconfig.Get("data_order"); _dataGroup = xconfig.Get("data_group"); _queryAble = xconfig.GetBoolean("query_able"); _insertAble = xconfig.GetBoolean("insert_able"); _updateAble = xconfig.GetBoolean("update_able"); _deleteAble = xconfig.GetBoolean("delete_able"); _validInsert = xconfig.GetBoolean("valid_insert"); _validUpdate = xconfig.GetBoolean("valid_update"); _validDelete = xconfig.GetBoolean("valid_delete"); _logicInsert = xconfig.Get("logic_insert"); _logicUpdate = xconfig.Get("logic_update"); _logicDelete = xconfig.Get("logic_delete"); }
//============================================================ // <T>加载设置节点。</T> // // @param xconfig 配置节点 //============================================================ public override void LoadConfig(FXmlNode xconfig) { base.LoadConfig(xconfig); _distance = xconfig.GetInteger("distance"); _angle = xconfig.GetInteger("angle"); _blurX = xconfig.GetInteger("blur_x"); _blurY = xconfig.GetInteger("blur_y"); _strength = xconfig.GetInteger("strength"); _quality = xconfig.GetInteger("quality"); _type = xconfig.Get("type"); _knockout = xconfig.GetBoolean("knockout"); foreach (FXmlNode xnode in xconfig.Nodes) { if (xnode.IsName("Effect")) { STplEffect effect = new STplEffect(); effect.color = Color.FromArgb(RInt.ParseHex(xnode.Get("color"))); effect.alpha = xnode.GetFloat("alpha"); effect.ratio = xnode.GetInteger("ratio"); _effects.Push(effect); } } }
//============================================================ // <T>加载配置信息。</T> // // @param xconfig 配置节点 // @param name 名称 //============================================================ public void LoadConfig(FXmlNode xconfig, string name) { // 加载有效性 bool containsValid = xconfig.Contains(name + "_valid"); if (containsValid) { _valid = xconfig.GetBoolean(name + "_valid"); } else { _valid = false; } // 加载颜色 if (xconfig.Contains(name)) { string value = xconfig.Get(name); if (!containsValid) { _valid = true; } Parse(value); } }
//============================================================ // <T>加载设置信息</T> // // @param xconfig 设置信息 //============================================================ public override void OnLoadConfig(FXmlNode xconfig) { base.OnLoadConfig(xconfig); // 加载属性 _dataName = xconfig.Get("data_name"); _dataType = REnum.ToValue <EDataType>(xconfig.Get("data_type")); _dataKey = xconfig.GetBoolean("data_key"); _dataRequire = xconfig.GetBoolean("data_require"); _dataValue = xconfig.Get("data_value"); _dataDefault = xconfig.Get("data_default"); _dataOrder = xconfig.Get("data_order"); _queryAble = xconfig.GetBoolean("query_able"); _insertAble = xconfig.GetBoolean("insert_able"); _updateAble = xconfig.GetBoolean("update_able"); _deleteAble = xconfig.GetBoolean("delete_able"); _displaySearch = xconfig.GetBoolean("display_search"); _displayPicker = xconfig.GetBoolean("display_picker"); _displayZoom = xconfig.GetBoolean("display_zoom"); _editInsert = xconfig.GetBoolean("edit_insert"); _editUpdate = xconfig.GetBoolean("edit_update"); _editDelete = xconfig.GetBoolean("edit_delete"); _validInsert = xconfig.GetBoolean("valid_insert"); _validUpdate = xconfig.GetBoolean("valid_update"); _validDelete = xconfig.GetBoolean("valid_delete"); _searchAble = xconfig.GetBoolean("search_able"); _searchValue = xconfig.Get("search_value"); _searchTypeCd = REnum.ToValue <EDataSearch>(xconfig.Get("search_type_cd")); _searchLabel = xconfig.Get("search_label"); }
//============================================================ // <T>加载配置信息。</T> // // @param xconfig 配置信息 //============================================================ public void LoadOrignConfig(FXmlNode xconfig) { // 读取属性 _name = xconfig.Nvl("name"); _effectName = xconfig.Nvl("effect_name"); if (xconfig.Contains("option_double")) { _optionDouble = EDrFlag.FromBoolean(xconfig.GetBoolean("option_double")); } if (xconfig.Contains("option_opacity")) { _optionOpacity = EDrFlag.FromBoolean(xconfig.GetBoolean("option_opacity")); } if (xconfig.Contains("option_shadow")) { _optionShadow = EDrFlag.FromBoolean(xconfig.GetBoolean("option_shadow")); } if (xconfig.Contains("option_transmittance")) { _optionTransmittance = EDrFlag.FromBoolean(xconfig.GetBoolean("option_transmittance")); } // 读取颜色 FXmlNode xcolor = xconfig.Find("Color"); if (null != xcolor) { _colorMin = xcolor.GetFloat("min"); _colorMax = xcolor.GetFloat("max"); if (xcolor.Contains("merge")) { _colorMerge = xcolor.GetFloat("merge"); } if (xcolor.Contains("rate")) { _colorRate = xcolor.GetFloat("rate"); } } // 读取环境光 FXmlNode xalpha = xconfig.Find("Alpha"); if (null != xalpha) { _optionAlpha = EDrFlag.FromBoolean(xalpha.GetBoolean("enable")); _alphaBase = xalpha.GetFloat("base"); _alphaRate = xalpha.GetFloat("rate"); _alphaLevel = xalpha.GetFloat("level"); _alphaMerge = xalpha.GetFloat("merge"); } // 读取环境光 FXmlNode xambient = xconfig.Find("Ambient"); if (null != xambient) { _ambientColor.LoadConfig(xambient, "r", "g", "b", "power"); _ambientShadow = xambient.GetFloat("shadow", _ambientShadow); } // 读取散射光 FXmlNode xdiffuse = xconfig.Find("Diffuse"); if (null != xdiffuse) { _diffuseColor.LoadConfig(xdiffuse, "r", "g", "b", "power"); _diffuseShadow = xdiffuse.GetFloat("shadow", _diffuseShadow); _diffuseViewColor.LoadConfig(xdiffuse, "camera_r", "camera_g", "camera_b", "camera_power"); _diffuseViewShadow = xdiffuse.GetFloat("camera_shadow", _diffuseViewShadow); } // 读取反射光 FXmlNode xspecular = xconfig.Find("Specular"); if (null != xspecular) { _specularColor.LoadConfig(xspecular, "r", "g", "b", "power"); _specularBase = xspecular.GetFloat("base", _specularBase); _specularRate = xspecular.GetFloat("rate", _specularRate); _specularAverage = xspecular.GetFloat("average", _specularAverage); _specularShadow = xspecular.GetFloat("shadow", _specularShadow); _specularViewColor.LoadConfig(xspecular, "camera_r", "camera_g", "camera_b", "camera_power"); _specularViewBase = xspecular.GetFloat("camera_base", _specularViewBase); _specularViewRate = xspecular.GetFloat("camera_rate", _specularViewRate); _specularViewAverage = xspecular.GetFloat("camera_average", _specularViewAverage); _specularViewShadow = xspecular.GetFloat("camera_shadow", _specularViewShadow); } // 读取自发光 FXmlNode xreflect = xconfig.Find("Reflect"); if (null != xreflect) { _reflectColor.LoadConfig(xreflect, "r", "g", "b", "power"); _reflectMerge = xreflect.GetFloat("merge", _reflectMerge); _reflectShadow = xreflect.GetFloat("shadow", _reflectShadow); } // 读取折射 FXmlNode xrefract = xconfig.Find("Refract"); if (null != xrefract) { _refractFrontColor.LoadConfig(xrefract, "front_r", "front_g", "front_b", "front_power"); _refractFrontMerge = xrefract.GetFloat("front_merge", _refractFrontMerge); _refractFrontShadow = xrefract.GetFloat("front_shadow", _refractFrontShadow); _refractBackColor.LoadConfig(xrefract, "back_r", "back_g", "back_b", "back_power"); _refractBackMerge = xrefract.GetFloat("back_merge", _refractBackMerge); _refractBackShadow = xrefract.GetFloat("back_shadow", _refractBackShadow); } // 读取不透明度 FXmlNode xopacity = xconfig.Find("Opacity"); if (null != xopacity) { _optionOpacity = EDrFlag.FromBoolean(xopacity.GetBoolean("enable")); _opacityColorColor.LoadConfigPower(xopacity); _opacityRate = xopacity.GetFloat("rate", _opacityRate); _opacityAlpha = xopacity.GetFloat("alpha", _opacityAlpha); _opacityDepth = xopacity.GetFloat("depth", _opacityDepth); _opacityTransmittance = xopacity.GetFloat("transmittance", _opacityTransmittance); } // 读取自发光 FXmlNode xemissive = xconfig.Find("Emissive"); if (null != xemissive) { _emissiveColor.LoadConfigPower(xemissive); } // 读取高度 FXmlNode xheight = xconfig.Find("Height"); if (null != xheight) { //_optionHeight = EDrFlag.FromBoolean(xheight.GetBoolean("enable")); _heightDepth = xheight.GetFloat("depth", _heightDepth); } // 读取表面 FXmlNode xsurface = xconfig.Find("Surface"); if (null != xsurface) { _surfaceRate = xsurface.GetFloat("rate", _surfaceRate); _surfaceReflect = xsurface.GetFloat("reflect", _surfaceReflect); _surfaceBright = xsurface.GetFloat("bright", _surfaceBright); _surfaceBrightLevel = xsurface.GetFloat("bright_level", _surfaceBrightLevel); _surfaceCoarse = xsurface.GetFloat("coarse", _surfaceCoarse); _surfaceCoarseLevel = xsurface.GetFloat("coarse_level", _surfaceCoarseLevel); _surfaceMerge = xsurface.GetFloat("merge", _surfaceMerge); _surfacePower = xsurface.GetFloat("power", _surfacePower); } }
public virtual void LoadConfig(FXmlNode config) { // Type if (config.Contains(PTY_TYPE)) { _type = REnum.ToValue <EScheduleTaskType>(config[PTY_TYPE]); } // Valid if (config.Contains(PTY_VALID)) { _valid = config.GetBoolean(PTY_VALID); } // Day Interval if (config.Contains(PTY_DAY_INTERVAL)) { _dayInterval = RInt.Parse(config[PTY_DAY_INTERVAL]); } // Week Interval if (config.Contains(PTY_WEEK_INTERVAL)) { _weekInterval = RInt.Parse(config[PTY_WEEK_INTERVAL]); } // Month Interval if (config.Contains(PTY_MONTH_INTERVAL)) { _monthInterval = RInt.Parse(config[PTY_MONTH_INTERVAL]); } // WeekDays if (config.Contains(PTY_WEEKDAYS)) { string weekDays = config[PTY_WEEKDAYS]; if (!RString.IsEmpty(weekDays)) { _weekDays = (EScheduleWeekDay)RInt.Parse(weekDays); } } // Month type if (config.Contains(PTY_MONTH_TYPE)) { string monthType = config[PTY_MONTH_TYPE]; if (!RString.IsEmpty(monthType)) { _monthType = (EScheduleMonthType)RInt.Parse(monthType); } } // Month day if (config.Contains(PTY_MONTH_DAY)) { _monthDay = RInt.Parse(config[PTY_MONTH_DAY]); } // Month week if (config.Contains(PTY_MONTH_WEEK)) { string monthWeek = config[PTY_MONTH_WEEK]; if (!RString.IsEmpty(monthWeek)) { _monthWeek = (EScheduleMonthWeek)RInt.Parse(monthWeek); } } // Month week day if (config.Contains(PTY_MONTH_WEEK_DAY)) { _monthWeekDay = RInt.Parse(config[PTY_MONTH_WEEK_DAY]); } // Months if (config.Contains(PTY_MONTHS)) { string months = config[PTY_MONTHS]; if (!RString.IsEmpty(months)) { _months = (EScheduleMonth)RInt.Parse(months); } } // Once date if (config.Contains(PTY_ONCE_DATE)) { _onceDate = RDate.Parse(config[PTY_ONCE_DATE]); } // Begin date if (config.Contains(PTY_BEGIN_DATE)) { _beginDate = RDate.Parse(config[PTY_BEGIN_DATE]); } // End valid if (config.Contains(PTY_END_VALID)) { _endValid = config.GetBoolean(PTY_END_VALID); } // End date if (config.Contains(PTY_END_DATE)) { _endDate = RDate.Parse(config[PTY_END_DATE]); } // Time if (config.Contains(PTY_TIME)) { _time = RDate.Parse(config[PTY_TIME]); } }
//============================================================ // <T>根据名称获得布尔设置。</T> // // @param name 名称 // @param defaultValue 缺省内容 // @return 布尔 //============================================================ public bool GetBoolean(string name = "value", bool defaultValue = false) { return(_config.GetBoolean(name, defaultValue)); }
//============================================================ // <T>加载设置信息。</T> // // @param xconfig 设置信息 //============================================================ public override void OnLoadConfig(FXmlNode xconfig) { base.OnLoadConfig(xconfig); _optionDefault = xconfig.GetBoolean("option_default", _optionDefault); _groundResource.LoadConfig(xconfig, "ground"); }
//============================================================ // <T>加载设置信息</T> // // @param xconfig 设置信息 //============================================================ public override void OnLoadConfig(FXmlNode xconfig) { base.OnLoadConfig(xconfig); // 加载配置 _optionLink = xconfig.GetBoolean("option_link", _optionLink); }