C#winform 读取资源里面的图片

先学习:https://www.cnblogs.com/wenluderen/p/18877130

******************************************************************************************************************

在一个C#winform 程序里面,有一个Resources.resx , 我在里面添加一个图片资源, 这个图片的类型信息是:

System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a

这个图片资源的的名称是:test

我想知道 ,我想知道 如何读取这个名为:test 的图片资源,然后显示到Name 是pictureBox1 的控件里面?

*****************

pictureBox1.Image = Properties.Resources.test;

*****************

然后在Resources.zh-CN.resx 也添加一个图片资源文件,名称也是test。

 

 

 我想通过:Thread.CurrentThread.CurrentUICulture  ,去切换 pictureBox1 显示的图片内容?  该怎么继续写代码?

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Globalization;
using System.Linq;
using System.Reflection;
using System.Resources;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace gsztest
{
    public partial class Form1 : Form
    {
        private readonly ResourceManager _resourceManager;
        public Form1()
        {
            InitializeComponent();
            // 初始化ResourceManager(基名称 = 命名空间 + 资源文件名)
            _resourceManager = new ResourceManager("gsztest.Properties.Resources", Assembly.GetExecutingAssembly());
            Thread.CurrentThread.CurrentUICulture = new CultureInfo("en");
            //Thread.CurrentThread.CurrentUICulture = new CultureInfo("zh-CN");
            LoadLocalizedImage();
            //pictureBox1.Image = Properties.Resources.test;
        }
        // 加载本地化图片
        private void LoadLocalizedImage()
        {
            // 获取当前区域性的图片资源
            var image = (Bitmap)_resourceManager.GetObject("test", Thread.CurrentThread.CurrentUICulture);
            pictureBox1.Image = image;
        }
    }
}

 

posted @ 2025-05-15 10:17  wenluderen  阅读(136)  评论(0)    收藏  举报