在控制模板中从网站加载图片时出现问题
我尝试从数据库中读取html内容并在页面中显示:
我为此控件设计了一个控件模板,generic.xaml喜欢以下内容:
<Style TargetType="q:ChoiceQuestion"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="q:ChoiceQuestion"> <RichTextBlock x:Name="QuestionTitleTextBlock" VerticalAlignment="Center"> <Paragraph x:Name="QuestionTitleParagraph"> <Run Text="{Binding OrderNumber}"></Run> </Paragraph> </RichTextBlock> </ControlTemplate> </Setter.Value> </Setter> </Style>
我从html内容中获取这些图片并将其添加到QuestionTitleParagraph,因此我编写以下代码以在OnApplyTemplate中显示图像:
public override void OnApplyTemplate() { base.OnApplyTemplate(); // Get the image url from database, the following image is just for test ImageSource imageSource = new BitmapImage(new Uri("http://localhost:8081/uploadfile/2012/07/19/temp1.png",
UriKind.Absolute)); Image img = new Image(); img.Source = imageSource; img.Width = 100; img.Height = 100;
// Add the image to QuestionTitleParagraph QuestionTitleParagraph = (Paragraph)base.GetTemplateChild("QuestionTitleParagraph"); InlineUIContainer container = new InlineUIContainer(); container.Child = img; QuestionTitleParagraph.Inlines.Add(container); }
我的问题是它只显示我页面中的空白图像,并且大小与我所设想的相同(100 * 100)。如何在控制模板中动态显示图像?我确信图片网址是有效的,我可以在richtextblock中显示它而不是在控件模板中。我发现如果我没有为图像设置宽度和高度,它也无法在richtextblock中显示。
答案 0 :(得分:1)