在WPF控件中显示带有HTML图像标签的文本

时间:2019-03-22 18:02:58

标签: html .net wpf image richtextbox

我尝试显示包含字符串和HTML标签的文本,并渲染图像。

SourceText="TextToDisplay <img Source="Http://...cat.png"> and thats <b>it</b>";

RichTextBox不能很好地工作。

我找到了一些NuGet软件包:

  • HtmlRenderer:但是无法访问需要Windows凭据才能访问的图像,无法发送凭据,因此图像出现错误404。
  • HtmlAgilityPack:不适用于图像
  • HtmlRichTextBoxBehavior:不适用于图片

我没有资源了。...

用例是我尝试在WorkItem中复制“ TFS描述”框,它可以包含HTML标记。

当我查询TFS api以获取描述时,这就是我们收到的信息,并且我想显示具有相同iamges的相同框。...

1 个答案:

答案 0 :(得分:0)

这是WPF,因此您可以轻松构建所需的任何自定义控件。

TextBlock内的ImageStackPanel控件开始,然后从那里开始。如果您不想要,它不必比这更复杂。或者,如果您需要其他功能,则可以添加许多其他功能。 WPF使您可以灵活地构建所需的任何内容。

<StackPanel>
    <TextBlock Text="TextToDisplay"/>
    <Image Source="http://myUrl.../myImage.png"/>
</StackPanel>

这将它们一个接一个地放置。如果希望它们彼此重叠,请使用Grid来固定它们。如果需要MouseOver效果,请使用PopUp控件。如果要在UI中使用实际的超链接,请使用WPF Hyperlink元素。