首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在没有windowless=true的Silverlight中显示HTML内容

在没有windowless=true的Silverlight中显示HTML内容
EN

Stack Overflow用户
提问于 2012-09-20 13:33:19
回答 2查看 1.9K关注 0票数 1

我是Silverlight的新手,我想在一个Silverlight应用程序中显示一些HTML。我一直在阅读一些方法,比如Telerik的HTMLPlaceHolder的HTML覆盖,方法是将一些css和javascript混合到应用程序中。

问题是,这两种方法都要求我设置windowless=true,在通过它的限制之后:

sdk/archive/2008/11/12/limitations-of-windowless-mode-for-silverlight.aspx

我不认为这是值得的,所以,在没有的情况下,是否有任何方法来显示HTML--没有窗口的设置为true?

提前感谢您的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-21 10:25:34

我正在使用Telerik的RadRichTextBox,它允许您呈现几乎任何类型的文档。

赫兹迈斯特,非常感谢你的回答,在看了HTMLTextBlock的代码之后,你建议我可以想出一个解决方案。这是我用的代码..。

.xaml

代码语言:javascript
复制
<UserControl x:Class="RadControlsSample.RadRichTextBoxTest"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"            
    xmlns:telerikHtml="clr-namespace:Telerik.Windows.Documents.FormatProviders.Html;assembly=Telerik.Windows.Documents.FormatProviders.Html"
    mc:Ignorable="d" d:DesignWidth="700" d:DesignHeight="400" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"
    Loaded="Example_Loaded">

    <Grid x:Name="LayoutRoot">
        <telerik:RadRichTextBox Grid.Row="1" x:Name="richTextBox" DataContext="{Binding}" IsReadOnly="True" ShowMergeFieldsHighlight="False" IsSpellCheckingEnabled="False" />
    </Grid>
</UserControl>

.cs

代码语言:javascript
复制
using System;
using System.IO;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Resources;
using Telerik.Windows.Documents.FormatProviders.Html;
using Telerik.Windows.Documents.Model;

namespace RadControlsSample
{
    public partial class RadRichTextBoxTest : UserControl
    {
        private const string SampleDocumentPath = "SampleData/SomeHtml.html";

        public RadRichTextBoxTest()
        {
            InitializeComponent();
        }

        private void Example_Loaded(object sender, RoutedEventArgs e)
        {
            //Load html file from the content file
            var fileUri = new Uri(SampleDocumentPath, UriKind.Relative);
            StreamResourceInfo streamInfo = System.Windows.Application.GetResourceStream(fileUri);
            var reader = new StreamReader(streamInfo.Stream);
            this.richTextBox.Document = new HtmlFormatProvider().Import(reader.ReadToEnd());
            this.richTextBox.Document.LayoutMode = DocumentLayoutMode.Flow;
        }
    }
}
票数 0
EN

Stack Overflow用户

发布于 2012-09-20 13:46:43

从Silverlight 4开始,当应用程序没有浏览器时,可以使用一个WebBrowser控件。因为Silverlight 5,它也可以在浏览器中工作,但是需要用户系统上的崇高的信任

对于非常简单的HTML,您也可以尝试使用HtmlTextBlock

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12513759

复制
相关文章

相似问题

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