如何使用数据源/文件夹中的数据/文件使程序可移植



目前我有一个程序使用电脑上的文件(图片)。我发现我可以将图片加载到程序DataSources中,但这对我解决问题没有帮助。当我更换程序或将其转移到另一台电脑并运行时,它会因为第二行而崩溃:

InitializeComponent();
        Animation = new Bitmap(@"C:UsersUserDocumentsVisual Studio 2015ProjectsCourseWorkCourseWorkPropertiesDataSourcesSelection-Sort-Animation (1).gif");

我想知道如何正确设置路径(@"")或做其他事情,这样我的程序就可以在任何机器上找到并加载图片。

您可以将图像放在Resources.resx文件中。

  • 它支持本地化
  • 它易于维护和使用
  • 它有很好的设计时支持,您可以稍后在设计器中使用资源项;例如,使用设计器将表单的背景图像设置为资源项

创建Windows窗体应用程序时,如果在解决方案资源管理器中查看,则会发现Properties文件夹中存在一个Resources.resx文件。您可以使用此文件(或添加另一个.resx文件)在应用程序中嵌入资源:

使用资源设计器:

  1. 打开Resoures.resx设计器
  2. 单击设计器工具栏中"添加资源"按钮的下拉菜单
  3. 单击添加现有文件
  4. 浏览并选择所需的文件,然后单击"打开"
  5. 该文件将以名称添加到Resources.resx
  6. 您还可以在项目的Resources文件夹中看到该文件。这些文件不会复制到输出中,这里只供您在将来进行更改时使用

访问资源:

您可以简单地使用每个资源的名称来访问它,例如:

this.PictureBox1.Image= Properties.Resources.Loading;

最新更新