zoukankan      html  css  js  c++  java
  • WPF使用ARCGIS App文件配置Cs后台文件

    using System;
    using System.Collections.Generic;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Windows;
    
    using ESRI.ArcGIS.esriSystem;
    using System.Xml.Serialization;
    using System.IO;
    using SWGW.Properties;
    using System.Diagnostics;
    namespace SWGW
    {
        /// <summary>
        /// App.xaml 的交互逻辑
        /// </summary>
        public partial class App : Application
        {
    
            #region License
            protected override void OnStartup(StartupEventArgs e)
            {
                SettingsManager.OnStartup();
                base.OnStartup(e);
    
                if (!LicenseManager.InitializeLicense.InitializeEngineLicense())
                {
                    MessageBox.Show("无法初始化ArcGIS Engine的授权或地球扩展。截止...");
                }
               
            }
            #endregion
    
            #region 私有类
            static class SettingsManager
            {
                #region Class Members
                static Settings settings = new Settings();
                const string applicationDirectory = "SWGW";
                //配置文件名称
                const string settingsFileName = "XXXX.xml";
                #endregion Class Members
    
                #region Constructor
    
                static SettingsManager()
                {
                    EnsureDirectoryExists();
                }
    
                #endregion Constructor
    
                #region Properties
    
                public static Settings ApplicationSettings
                {
                    get { return settings; }
                }
    
                #endregion Properties
    
                #region Startup, Exit
    
                public static void OnStartup()
                {
                    LoadSettings();
                }
    
                public static void OnExit()
                {
                    SaveSettings();
                }
    
                #endregion Overrides
    
                #region Other Functions
    
                static string SettingsFileName
                {
                    get
                    {
                        return Path.Combine(
                            Path.Combine(
                            Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
                            applicationDirectory),
                            settingsFileName);
                    }
                }
    
                static void LoadSettings()
                {
                    Settings tmp;
    
                    try
                    {
                        XmlSerializer xml = new XmlSerializer(typeof(Settings));
    
                        using (Stream stream = new System.IO.FileStream(SettingsFileName,
                            FileMode.Open, FileAccess.Read, FileShare.Read))
                        {
                            tmp = (Settings)xml.Deserialize(stream);
                        }
                    }
                    catch (Exception e)
                    {
                        Trace.WriteLine(e.Message);
                        return;
                    }
    
                    settings = tmp;
                }
    
                static void SaveSettings()
                {
                    try
                    {
                        XmlSerializer xml = new XmlSerializer(typeof(Settings));
    
                        using (Stream stream = new System.IO.FileStream(SettingsFileName,
                               FileMode.Create, FileAccess.Write, FileShare.None))
                        {
                            xml.Serialize(stream, settings);
                        }
                    }
                    catch (Exception e)
                    {
                        Trace.WriteLine(e.Message);
                    }
                }
    
                [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")]
                static void EnsureDirectoryExists()
                {
                    try
                    {
                        DirectoryInfo info = new DirectoryInfo(
                            Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
                            applicationDirectory));
    
                        if (!info.Exists)
                        {
                            info.Create();
                        }
                    }
                    catch (Exception ex)
                    {
                        Trace.WriteLine(ex.Message);
                    }
                }
    
                #endregion Other Functions
            }
    
    
            #endregion
        }
    }
  • 相关阅读:
    SVN: repository browser 库浏览器
    创业泡沫真他妈的大出血来了 --个人需要创业以谋生,行业需要创业以求变,国家需要创业以维稳
    判断输入的是否是大于0的正整数
    linux开放或限制端口和ip访问
    linux模糊删除es索引脚本
    ssh免密登录
    DES加密解密
    SpringBoot 单元测试
    SpringContextHolder 工具类
    fiddler抓包 443 请求不到数据
  • 原文地址:https://www.cnblogs.com/imeiba/p/5697977.html
Copyright © 2011-2022 走看看