當前位置: 妍妍網 > 碼農

C# 修改配置檔進行表單logo切換

2024-02-09碼農

01

前言:題外的話

大家可能發現這個號現在原創越來越少了,其實小編並沒有放棄持續更新,只是把一手原創放到了 【 dotnet編程大全 】這個號了,那個號目前原創主要更新的是wpf mvvm方面的知識,框架用的Caliburn.Micro,關於這個框架介紹,不了解的自行百度。有興趣學習的可以關註:

相關經典原創文章連結:點選可以檢視原文

02


主表單

String title = LogoConfig.GetLogoConfig("Title");if(title.Length>0) {this.Text = title; panelCaption.Text = title; }String logoImage = LogoConfig.GetLogoConfig("Logo");if (logoImage.Length > 0) { logoImage = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "image\\" + logoImage); Image logo = Image.FromFile(logoImage); pictureLogo.Image = logo; } logoImage = LogoConfig.GetLogoConfig("Image");if (logoImage.Length > 0) { logoImage = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "image\\" + logoImage); Image brand = Image.FromFile(logoImage); pictureBrand.Image = brand; }

03


類檔

using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespaceEvenTHZSystem{ classLogoConfig {static Dictionary<string, string> logoconfigmap = new Dictionary<string, string>();staticbool bInitialized = false;publicstaticstringGetLogoConfig(string key) {if (!bInitialized) {try { String logoConfig = Path.Combine(AppDomain.CurrentDomain.BaseDirectory + "image\\logo.config");using (StreamReader reader = new StreamReader(logoConfig)) {while (!reader.EndOfStream) { String line = reader.ReadLine();string[] kv = line.Split('=');if (kv != null) { logoconfigmap.Add(kv[0], kv[1]); } } } }catch { } bInitialized = true; }stringvalue = "";try {value = logoconfigmap[key]; }catch { }returnvalue; } }}

配置檔: