Esempio n. 1
0
        // 保存form尺寸位置状态到配置文件中
        // parameters:
        //		form	Form对象
        //		strCfgTitle	配置信息路径。本函数将用此值作为SetString()或SetInt()的strPath参数使用
        public static void SaveFormStates(this ConfigSetting config,
                                          Form form,
                                          string strCfgTitle)
        {
            // 保存窗口状态
            config.Set(
                strCfgTitle, "window_state",
                Enum.GetName(typeof(FormWindowState),
                             form.WindowState));

            Size  size     = form.Size;
            Point location = form.Location;

            if (form.WindowState != FormWindowState.Normal)
            {
                size     = form.RestoreBounds.Size;
                location = form.RestoreBounds.Location;
            }

            config.SetInt(
                strCfgTitle, "width", size.Width);       // form.Width
            config.SetInt(
                strCfgTitle, "height", size.Height);     // form.Height

            config.SetInt(strCfgTitle, "x", location.X); // form.Location.X
            config.SetInt(strCfgTitle, "y", location.Y); // form.Location.Y

            // 保存MDI窗口状态 -- 是否最大化?
            if (form.ActiveMdiChild != null)
            {
                if (form.ActiveMdiChild.WindowState == FormWindowState.Minimized)
                {
                    config.Set(
                        strCfgTitle,
                        "mdi_child_window_state",
                        Enum.GetName(typeof(FormWindowState),
                                     FormWindowState.Normal));
                }
                else
                {
                    config.Set(
                        strCfgTitle,
                        "mdi_child_window_state",
                        Enum.GetName(typeof(FormWindowState),
                                     form.ActiveMdiChild.WindowState));
                }
            }
            else
            {
                config.Set(
                    strCfgTitle,
                    "mdi_child_window_state",
                    "");
            }
        }
Esempio n. 2
0
        public bool Finish()
        {
            string strError = "";

            if (string.IsNullOrEmpty(this.DataDir))
            {
                strError = "this.DataDir 不应为空";
                goto ERROR1;
            }

            // Save the configuration file.
            if (_config != null)
            {
                _config.Set("default", "data_dir", this.DataDir);
                _config.Save();
                _config = null;
            }

            // 删除备份数据目录
            if (string.IsNullOrEmpty(this.ShadowDataDir) == false)
            {
                PathUtil.DeleteDirectory(this.ShadowDataDir);
            }
            return(true);

ERROR1:
            MessageBox.Show(this, strError);
            return(false);
        }