【问题标题】:Why Xamarin ClipboardManager does not contains html only plain text?为什么 Xamarin ClipboardManager 不包含仅纯文本的 html?
【发布时间】:2019-11-29 22:39:38
【问题描述】:

我正在尝试像 Gmail 那样模拟 HTML 文本的复制/粘贴行为。 IE。如果我从 Chrome 页面手动将一些文本复制到 Gmail 中的新邮件中,文本的格式会(或多或少)带有项目符号、标题等。

我尝试使用剪贴板管理器,但它只包含一个具有纯文本格式的剪辑。我做错了什么?

    ClipboardManager clipboardManager = (ClipboardManager)Forms.Context.GetSystemService(Context.ClipboardService);

    ClipDescription decr = clipboardManager.PrimaryClip.Description;
    clipboardManager.PrimaryClip;

【问题讨论】:

标签: c# xamarin xamarin.android clipboardmanager


【解决方案1】:

您需要使用GetItemAt 方法并选择是否要将其强制转换为您的应用所需的格式:

示例(假设第一个剪辑数据是您想要的):

var htmlText = clipboardManager.PrimaryClip.GetItemAt(0).HtmlText;
var coercedHtmlText = clipboardManager.PrimaryClip.GetItemAt(0).CoerceToHtmlText;
var coercedFormattedStyledText = clipboardManager.PrimaryClip.GetItemAt(0).CoerceToStyledTextFormatted;

【讨论】:

  • 我尝试获取 HtmlText 属性,它为空,最后两个未定义
  • @Tanya 将0 更改为另一个值(1、2 等)会改变结果吗?
  • 是的,它写道没有这样的元素。 :-)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-08
  • 1970-01-01
  • 1970-01-01
  • 2010-10-23
  • 2023-03-17
  • 2023-03-22
相关资源
最近更新 更多