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

时间:2015-12-23 21:36:41

标签: c# winforms

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

InitializeComponent();
        Animation = new Bitmap(@"C:\Users\User\Documents\Visual Studio 2015\Projects\CourseWork\CourseWork\Properties\DataSources\Selection-Sort-Animation (1).gif");

我想知道如何正确设置路径(@"")或执行其他操作,以便我的程序可以在任何计算机上找到并加载图片。

1 个答案:

答案 0 :(得分:1)

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

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

创建Windows窗体应用程序时,如果查看解决方案资源管理器,您将在Resources.resx文件夹中看到Properties文件。您可以使用此文件(或添加另一个.resx文件)在您的应用程序中嵌入资源来执行此操作:

使用资源设计器:

  1. 打开Resoures.resx设计师。
  2. 点击设计器工具栏中的添加资源按钮下拉列表。
  3. 点击添加现有文件...
  4. 浏览并选择所需文件,然后单击“打开”。
  5. 该文件将在Resources.resx中添加一个名称。
  6. 您还可以在项目的Resources文件夹中看到该文件。这些文件不会复制到输出,仅供您使用,以便将来更改它们。
  7. 访问资源:

    您只需使用其名称即可访问每个资源,例如:

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