在C#中使用资源保存图像和文本和其他数据并在运行时加载

资源是您可以构建到应用程序中的图像、字符串、文本文件和其他数据。您的程序可以在运行时加载资源以显示新图片、文本或其他内容。

要将资源添加到项目,请打开"项目"菜单并选择最底部的"属性"命令。在"属性"页面上,单击"资源"选项卡。现在,您可以使用"添加资源"下拉菜单将现有或新文件添加到程序的资源中。

当您向程序添加资源时,C# 会创建一个表示该资源的类型变量,名为namespace .Properties.Resources. resourcename,其中namespace是程序的命名空间,resourcename是资源的名称。例如,在此示例中,我添加了一个名为 Earth.jpg 的 jpg 文件,因此程序可以使用Bitmap变量Properties.Resources.Earth。

示例程序显示了一组RadioButton,标签分别为 Mercury、Venus、Earth 等。单击其中一个时,将执行类似以下的代码以显示相应的资源。

cs 复制代码
private void radMercury_CheckedChanged(object sender, EventArgs e)
{
    picPlanet.Image = Properties.Resources.Mercury;
}
cs 复制代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace howto_use_resources
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void radMercury_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Mercury;
        }

        private void radVenus_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Venus;
        }

        private void radEarth_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Earth;
        }

        private void radMars_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Mars;
        }

        private void radJupiter_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Jupiter;
        }

        private void radSaturn_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Saturn;
        }

        private void radUranus_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Uranus;
        }

        private void radNeptune_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Neptune;
        }

        private void radPulto_CheckedChanged(object sender, EventArgs e)
        {
            picPlanet.Image = Properties.Resources.Pluto;
        }
    }
}
相关推荐
TunerT_TQ11 分钟前
【智能体安全治理|专栏第9期】从“一堆规则”到“数字宪法”:智能体治理的下一个阶段
java·开发语言·安全·开源治理·大模型安全·ai基础设施·智能体安全
Aurorar0rua12 分钟前
CS50 x 2024 Notes Algorithms - 07
c语言·开发语言·学习方法
程序员-Benothing34 分钟前
Java ForkJoinPool 详解:从分治思想到高性能并行计算
java·开发语言·后端·面试·职场和发展
脚踏实地皮皮晨1 小时前
003006001_WrapPanel控件
开发语言·c#·.net·wpf·visual studio
上海安当技术1 小时前
单点登录 SSO 怎么选协议?SAML 2.0 / OAuth 2.0 / OIDC / CAS 对比与 ERP、OA、CRM 接入实战
java·开发语言
不才不才不不才1 小时前
Spring 源码系列(14): JDK 动态代理 vs CGLIB,以及拦截器责任链
java·开发语言·spring
mifengxing1 小时前
计算机组成原理——存储器系统
开发语言·考研·计算机组成原理·复习笔记·计算机408
脚踏实地皮皮晨2 小时前
003005002_WPF StackPanel 基类官方类定义逐行深度解析
开发语言·windows·算法·c#·wpf·visual studio
用户298698530142 小时前
Excel 转 PDF 免费在线工具,格式完美保留
人工智能·c#·excel
Yolanda_20222 小时前
Python学习-第九部分-错误处理与异常处理
开发语言·python·学习