Esempio n. 1
0
 /// <summary>
 /// 保存控件样式
 /// </summary>
 /// <param name="layoutControl"></param>
 /// <param name="formName"></param>
 public static void SaveControlLayout(this DevExpress.XtraLayout.LayoutControl layoutControl, string formName)
 {
     try
     {
         string path = @"C:\TigerApp\";
         if (!Directory.Exists(path))
         {
             Directory.CreateDirectory(path);
         }
         path = path + formName + "." + layoutControl.Name + ".xml";
         layoutControl.SaveLayoutToXml(path);
     }
     catch (Exception ex)
     {
         throw new Exception("保存样式出错:" + ex.Message);
     }
 }
Esempio n. 2
0
        public static void SaveLayoutForm(string FormName, DevExpress.XtraLayout.LayoutControl lctMain)
        {
            if (lctMain == null)
            {
                return;
            }
            if (!Directory.Exists(UserLayoutPath))
            {
                Directory.CreateDirectory(UserLayoutPath);
            }

            string path;

            path = GridLayoutPath + @"\" + FormName + "_" + lctMain.Name + ".xml";
            if (File.Exists(path))
            {
                File.Delete(path);
            }
            lctMain.SaveLayoutToXml(path);
        }
Esempio n. 3
0
            /******************************8
             * /// <summary>
             * /// 以窗体Form的名称+"_"+EFDevLayoutControl的名称,以及默认配置模式[暂定用户级]保存grid配置
             * /// </summary>
             * public void SaveLayout(DevExpress.XtraLayout.LayoutControl layoutControl)
             * {
             *  SaveLayout(layoutControl, ConfigEnum.Default);
             * }
             * /// <summary>
             * /// 以窗体Form的名称+"_"+gridView的名称,以及制定的配置模式保存grid配置
             * /// </summary>
             * /// <param name="ConfigModule">用户级和项目级</param>
             * public void SaveLayout(DevExpress.XtraLayout.LayoutControl layoutControl, ConfigEnum ConfigModule)
             * {
             *  this.SaveLayout(layoutControl, ConfigModule, string.Empty, string.Empty);
             * }
             ******************************/
            /// <summary>
            ///  文件目录不存在则创建,XML配置名称为: className +"窗体名称_"+EFDevLayoutControl的名称.XML.
            ///  ---2011-10-27 把 XML配置名称 改为 "窗体名称_"+EFDevLayoutControl的名称+_className.XML
            /// </summary>
            /// <param name="ConfigModule">配置默认,用户级和项目级</param>
            /// <param name="className">类名,当画面是配置画面时,为了区分不同窗体而添加类名 </param>
            /// <param name="moduleName">一级模块名称(如DE,为空时取窗体名称的第4至6位)</param>
            public void SaveLayout(DevExpress.XtraLayout.LayoutControl layoutControl, ConfigEnum ConfigModule, string className, string moduleName)
            {
                //模块名称
                string formName = layoutControl.FindForm().Name;

                if (moduleName.Trim().Equals(""))
                {
                    moduleName = formName.Length > 6 ? formName.Substring(4, 2) : formName;
                }
                if (formName.StartsWith("Form"))
                {
                    formName = formName.Substring(4);
                }
                //XML路径
                string fileDirectory = System.Reflection.Assembly.GetExecutingAssembly().Location;

                fileDirectory = Path.GetDirectoryName(fileDirectory);
                if (ConfigModule == ConfigEnum.UserConfig)
                {
                    //位于UserConfig下,用户名文件夹下,一级模块下
                    fileDirectory = fileDirectory + "\\..\\UserConfig\\" + "EF.EF_Args.formUserId" + "\\" + moduleName + "\\";
                }
                else if (ConfigModule == ConfigEnum.EPConfig)
                {
                    //位于一级模块下
                    fileDirectory = fileDirectory + "\\..\\" + moduleName + "\\";
                }
                else
                {
                    //位于UserConfig下,用户名文件夹下,一级模块下 (默认用户配置)
                    fileDirectory = fileDirectory + "\\..\\UserConfig\\" + "EF.EF_Args.formUserId" + "\\" + moduleName + "\\";
                }
                string fileDirectory2 = "";

                try
                {
                    fileDirectory2 = fileDirectory + "EC.UserConfig.Instance.Culture" + "\\";
                }
                catch { }
                //文件目录不存在则创建[逻辑上,当是项目配置时,模块目录一定存在,否则报错]
                if (!System.IO.Directory.Exists(fileDirectory))
                {
                    System.IO.Directory.CreateDirectory(fileDirectory);
                }
                if (fileDirectory2 != "" && !System.IO.Directory.Exists(fileDirectory2))
                {
                    System.IO.Directory.CreateDirectory(fileDirectory2);
                }
                //保存文件名
                //string fileName = className.Trim() + formName + "_" + layoutControl.Name + ".xml";
                //  ---2011-10-27 把 XML配置名称 改为 "窗体名称_"+EFDevLayoutControl的名称+_className.XML
                string fileName      = formName + "_" + layoutControl.Name + (className.Trim().Equals("")?"":("_" + className.Trim())) + ".xml";
                string filePath      = fileDirectory + fileName;
                string filePath2     = fileDirectory2 + fileName;
                bool   isFirstConfig = false;

                if (System.IO.File.Exists(filePath))
                {
                    if (System.IO.File.Exists(filePath2))
                    {
                        //文件已存在,则提示,是否覆盖
                        if (EF.EFMessageBox.Show("配置文件已存在,是否替换?", "提示", MessageBoxButtons.YesNo) != DialogResult.Yes)
                        {
                            return;
                        }
                    }
                }
                else
                {
                    isFirstConfig = false;
                }
                if (isFirstConfig)
                {
                    //即使是第一次配置也不保存到默认目录下.只放到对应语言目录下
                    // layoutControl.SaveLayoutToXml(filePath);
                }
                layoutControl.SaveLayoutToXml(filePath2);
            }