0

多くの調査の結果、画像を動的に表示することができないため、行き詰まりました。

これとほぼ同じ問題です。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」と表示されます。

ただし、その行がコメントされている場合、それは通過しますが、eimageは表示されません。

私が間違っていることはありますか?Xamlリーダーの制限はありますか?画像を動的に作成するためのさまざまな方法を検索して試しましたが、どの方法でも画像が読み込まれませんでした。

提案はすべて検討され、試行されます。私は今必死です...

ありがとう

4

1 に答える 1

0

最終的に、印刷エンジンのソースコードを変更し、ヘッダーを印刷する関数に、ヘッダーテンプレート内に配置したラベルのコンテンツにある「@title」を置き換えるタイトルを渡しました。

悲しいことに、これは最初の質問に答えませんが、それでも私にとっては回避策です。

于 2012-12-01T20:11:33.070 に答える