2014-02-11 23 views
1

打扰新手的问题,但我只是学习WPF。 我有一个图像,我已经将构建动作设置为“资源”资源图像可以在Xaml中引用,但不能在代码中引用,为什么?

如果我将它设置为XAML中的窗口图标,它就可以工作。 这样的:

Window ... Icon="Images/MyIco.png" 

但是,如果我尝试将其设置为源图片,我得到一个异常的资源未找到:

Uri uri = new Uri("pack://application:,,,/Images/MyIco.png"); // This does not work 
img.Source = BitmapFrame.Create(uri); 

我在做什么错的上面的代码?

回答

1

确保您的路径是正确的,如果是真的,U可以试试这个代码加载图像

//tmp is your path 
    BitmapImage img = new BitmapImage(new Uri(tmp, UriKind.Relative)); 
    img.CreateOptions = BitmapCreateOptions.None; 
    img.ImageOpened += img_ImageOpened; 

    void img_ImageOpened(object sender, RoutedEventArgs e) 
    { 
     WriteableBitmap wbm = new WriteableBitmap((BitmapImage)sender);     
    } 

例如:我的路径是“/Assets/sizes/background/bg_02.png”

+0

正如你所看到的,路径是正确的,因为它适用于Icon =“Images/MyIco.png” 我试图了解是否有错误的Uri路径字符串:“pack:// application:,, ,/图片/ MyIco.png” – Joezer

相关问题