3

我准备了一些数据供分享:

        package = package ?? new DataPackage();

        package.Properties.Title = "Event: " + data.Name;

        var text = new StringBuilder().AppendFormat(@"
Start at.   {0:F}<br/>
End at.     {1:F}<br/>
Total time. {2}<br/>
", data.StartTime, data.EndTime, data.TotalTime);


        var textHtml = text.ToString();
        package.SetText(textHtml.Replace("<br/>", ""));
        package.SetHtmlFormat(textHtml);

类似的中断在某些应用程序(例如 Tweetro)中表现良好,但在 Mail 中被忽略。有什么想法可以解决这个问题吗?

4

2 回答 2

0

您将 Text 和 Html 都提供给包。

因此,根据目标应用程序接受的内容,它将使用 Text 或 Html。在您的文本中,用<br/>空字符串替换。所以你不会有换行符。

您是否尝试过替换为“\n”?'\n' 是换行符。

    package.SetText(textHtml.Replace("<br/>", "\n"));
于 2012-10-23T21:56:20.387 回答
0

我知道我在这里聚会迟到了,但我也遇到了同样的问题。

我发现了这个 SO - How to add new line while sharing text in WinRt这让我在添加基于 HTML 的文本时添加了 HtmlFormatHelper.CreateHtmlFormat(textToShare)。这为我修复了邮件应用程序上的换行符,因为它开始使用 HTML。

package.SetHtmlFormat(HtmlFormatHelper.CreateHtmlFormat(textHtml));

我认为除非格式正确,否则邮件应用程序不会使用 HTML 内容,而 HtmlFormatHelper 似乎可以做到这一点。

于 2015-10-28T15:25:56.037 回答