首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在WPF WebBrowser控件中显示字符串中的html

在WPF WebBrowser控件中显示字符串中的html
EN

Stack Overflow用户
提问于 2010-04-06 22:49:56
回答 1查看 57.6K关注 0票数 67

我的数据上下文对象包含一个字符串属性,该属性返回需要在WebBrowser控件中显示的html;我找不到WebBrowser的任何属性来绑定它。有什么想法吗?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-04-06 23:54:46

WebBrowser有一个NavigateToString方法,您可以使用该方法导航到HTML内容。如果您希望能够绑定到该方法,则可以创建一个附加属性,该属性可以在值更改时仅调用该方法:

代码语言:javascript
复制
public static class BrowserBehavior
{
    public static readonly DependencyProperty HtmlProperty = DependencyProperty.RegisterAttached(
        "Html",
        typeof(string),
        typeof(BrowserBehavior),
        new FrameworkPropertyMetadata(OnHtmlChanged));

    [AttachedPropertyBrowsableForType(typeof(WebBrowser))]
    public static string GetHtml(WebBrowser d)
    {
        return (string)d.GetValue(HtmlProperty);
    }

    public static void SetHtml(WebBrowser d, string value)
    {
        d.SetValue(HtmlProperty, value);
    }

    static void OnHtmlChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
    {
        WebBrowser wb = d as WebBrowser;
        if (wb != null)
            wb.NavigateToString(e.NewValue as string);
    }
}

您可以这样使用它(其中lcl是xmlns-namespace-alias):

代码语言:javascript
复制
<WebBrowser lcl:BrowserBehavior.Html="{Binding HtmlToDisplay}" />
票数 130
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2585782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档