在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;
        }
    }
}
相关推荐
韶博雅14 分钟前
开启补充日志
java·开发语言·sql
被怪兽吃掉了38 分钟前
5.2.1一维组数定义方式
开发语言·c++·算法
TheBestRucy1 小时前
Python 九阳神功之肆:网络编程 · Socket 从入门到实战
开发语言·网络·python
j7~1 小时前
【C++】《C++二叉搜索树(BST)从入门到精通:概念、实现与Key/Value模型全解析》
开发语言·c++·学习·二叉搜索树
hehelm1 小时前
仿muduo库实现高并发服务器—Channel类
linux·服务器·开发语言·网络·c++
末代iOS程序员华仔1 小时前
Codex + Figma 生成 Objective‑C (UIKit) 完整工作流
c语言·开发语言·figma
SomeB1oody1 小时前
【RustyML入门】7.3. 性能调优与并行
开发语言·后端·机器学习·rust·教程
余额瞒着我当琳1 小时前
C++STL--list底层实现,迭代器分类,模拟list的迭代器封装、实现
java·开发语言·c++
小陈的进阶之路1 小时前
Claude Code辅助测试:API测试与pytest自动化
android·开发语言·kotlin
denggun123451 小时前
Python两套原生信号量与swift对比
开发语言·python·swift