企業類庫之Configuration-Migration Application Block(一)

EditorFontData.cs
using  System;
using  System.Collections.Generic;
using  System.Text;
using  System.Configuration;

namespace  Demo003
{
    
/// <summary>
    
/// 
    
/// </summary>

    public class EditorFontData:ConfigurationSection
    
{
        
/// <summary>
        
/// 
        
/// </summary>

        public EditorFontData()
        
{
        }


        
/// <summary>
        
/// 
        
/// </summary>

        ~EditorFontData()
        
{
        }


        
/// <summary>
        
/// 
        
/// </summary>

        [ConfigurationProperty("Name")]
        
public string Name
        
{
            
get
            
{
                
return Convert.ToString(this["Name"]);
            }

            
set
            
{
                
this["Name"= value;
            }

        }


        
/// <summary>
        
/// 
        
/// </summary>

        [ConfigurationProperty("Size")]
        
public double Size
        
{
            
get
            
{
                
return Convert.ToDouble(this["Size"]);
            }

            
set
            
{
                
this["Size"= value;
            }

        }


        
/// <summary>
        
/// 
        
/// </summary>

        [ConfigurationProperty("Style")]
        
public int Style
        
{
            
get
            
{
                
return Convert.ToInt32(this["Style"]);
            }

            
set
            
{
                
this["Style"= value;
            }

        }


        
/// <summary>
        
/// 
        
/// </summary>
        
/// <returns></returns>

        public override string ToString()
        
{
            StringBuilder sb 
= new StringBuilder();
            sb.AppendFormat(
"Name={0}; Size={1}; Style={2}", Name.ToString(), Size.ToString(), Style.ToString());
            
return sb.ToString();
        }

    }

}

 

App.config 

<? xml version="1.0" encoding="utf-8"  ?>
< configuration >
  
< configSections >
    
< section  name ="EditorSettings"  type ="Demo003.EditorFontData, Demo003, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null"   />
  
</ configSections >
  
< EditorSettings  Name ="Verdana"  Size ="24"  Style ="2"   />
</ configuration >

 

Form1.cs

using  System;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Text;
using  System.Windows.Forms;
using  System.Configuration;

namespace  Demo003
{
    
/// <summary>
    
/// 
    
/// </summary>

    public partial class Form1 : Form
    
{
        
/// <summary>
        
/// 
        
/// </summary>

        public Form1()
        
{
            InitializeComponent();
        }


        
/// <summary>
        
/// 
        
/// </summary>
        
/// <param name="sender"></param>
        
/// <param name="e"></param>

        private void button1_Click(object sender, EventArgs e)
        
{
            
try
            
{
                EditorFontData aa 
= ConfigurationManager.GetSection("EditorSettings"as EditorFontData;
                MessageBox.Show(aa.ToString());
            }

            
catch (Exception Err)
            
{
                MessageBox.Show(Err.Message);
            }

        }


        
/// <summary>
        
/// 
        
/// </summary>
        
/// <param name="sender"></param>
        
/// <param name="e"></param>

        private void button2_Click(object sender, EventArgs e)
        
{
            FontDialog fd 
= new FontDialog();
            EditorFontData aa 
= new EditorFontData();
            
if (fd.ShowDialog() == DialogResult.OK)
            
{
                aa.Name 
= fd.Font.Name;
                aa.Size 
= fd.Font.Size;
                aa.Style
=Convert.ToInt32(fd.Font.Style);

                Configuration config 
= ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                config.Sections.Remove(
"EditorSettings");
                config.Sections.Add(
"EditorSettings", aa);
                config.Save();
            }

        }

    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值