我正在创建WPF窗口并在内部加载用户控件,如下所示:

        Uri uri = new Uri("Views/ApplicationInfo.xaml", UriKind.RelativeOrAbsolute);

        UserControl versionInfoUserControl = (UserControl)Application.LoadComponent(uri);

        #region Initizalizing the Window, Winodw Proporties and Icon
        Window versionWindow = new Window();


        versionWindow.Height = 250;
        versionWindow.Width = 400;
        versionWindow.ResizeMode = ResizeMode.NoResize;


现在,当我尝试添加如下所示的应用程序图标时:

 versionWindow.Icon = new BitmapImage(new Uri(@"pack://application:,,component/Images/Ico.png"));


我收到URI前缀无法识别的错误。

*我是否需要使用以下名称更改应用程序名称:

 versionWindow.Icon = new BitmapImage(new Uri(@"pack://MyApp.MVVM.WPF:,,component/Images/Ico.png"));


即使那样我也遇到同样的错误

最佳答案

假设我有一个项目,其中有一个名为Assets的文件夹,并且里面有一个带有生成操作资源或嵌入式资源的png图像。

然后工作:

var versionWindow = new Window
                                {
                                    Height = 250,
                                    Width = 400,
                                    ResizeMode = ResizeMode.NoResize,
                                    Icon = new BitmapImage(new Uri(@"pack://application:,,,/Assets/icon.png"))
                                };

        versionWindow.Show();

09-25 20:37