System.Windows.Copy() 不适用于表情符号

System.Windows.Copy() does not work with Emojis

我一直在尝试以各种方式将表情符号复制到剪贴板,但没有任何效果。表情符号简单地替换为空格。

Clipboard.SetText(message, TextDataFormat.UnicodeText);

我尝试过各种转换,但它们也没有给出任何结果。

尽管如此,如果我将相同的表情符号粘贴到文本框,然后尝试将其复制回来 - 它会起作用。我什至尝试从代码隐藏创建一个 TextBox,用我的消息填充它并再次复制它 - 不起作用。

我使用了以下示例并且对我有用:

    public MainWindow()
    {
        InitializeComponent();

        TextBlock tb = new TextBlock();
        var ch = char.ConvertFromUtf32(128076);
        tb.Text = ch.ToString();
        Clipboard.SetText(ch.ToString(), TextDataFormat.UnicodeText);
        tb.Text += Clipboard.GetText(TextDataFormat.UnicodeText);
        this.Content = tb;
    } 

TextBlock.Text是。也许问题在于您如何设法取回文本!