经过大量研究后,我陷入困境,因为我无法动态显示图像。
这与以下问题几乎相同:Dynamic loading of images in WPF
这是我目前的实际代码
Dim logo As New Image
Dim logoSource As New BitmapImage
logoSource.BeginInit()
logoSource.UriSource = New Uri("../../Images/CarpeDiemLogo.gif", UriKind.Relative)
logoSource.CacheOption = BitmapCacheOption.OnLoad
logoSource.EndInit()
logo.Height = 109
logo.Width = 172
logo.HorizontalAlignment = Windows.HorizontalAlignment.Right
logo.VerticalAlignment = Windows.VerticalAlignment.Top
logo.Source = logoSource
logo.Stretch = Stretch.Uniform
g.Children.Add(logo)'Where g is a grid
你可以看到它非常相似但我遇到了一个问题。 我正在尝试将图像添加到用作控件的标头模板的用户控件中使用此打印引擎:http://www.codeproject.com/Articles/238135/WPF-Print-Engine-Part-I
在打印引擎中的某个时刻,它会传递此行代码
var header = XamlReader.Parse(PrintTableDefination.HeaderTemplate) as FrameworkElement;
如果没有注释logoSource.CacheOption = BitmapCacheOption.OnLoad,它会告诉我'''System.Windows.Media.Imaging.BitmapImage'的初始化'引发了异常'行和行位置826。“
但是,如果该行被注释,则会通过,但不显示该图像。
我有什么问题吗? Xaml阅读器的局限性?我已经搜索并尝试了不同的方法来动态创建图像,但没有一个加载它。
任何建议都将被考虑和尝试。我现在很绝望......
由于
答案 0 :(得分:0)
我最后修改了打印引擎的源代码,然后传递给打印标题的函数,我将替换在标题内容中找到的“@title”标题。
可悲的是,这并没有回答最初的问题,但这对我来说是一种解决方法。