Unicode-Zeichen (U + 1FXYZ) werden bei Verwendung im Code-Behind nicht korrekt ausgegeben

In meinem Code-Behind versuche ich, den Hexcode für ein Unicode-Zeichen zurückzugeben.

Ich versuche, eines dieser Zeichen für die Segoe UI Symbol-Schriftart auszugeben:http://www.istartedsomething.com/uploads/emojisegoe.html. Zum Beispiel "U + 1F60A".

Wenn ich das über meine xaml mache, wie zum Beispiel:

FontFamily="Segoe UI Symbol" Text="😊"

Dann funktioniert es gut.

Wenn ich den Wert jedoch binde, um ihn über eine .cs-Konverterklasse abzurufen, wird das richtige Zeichen nicht angezeigt:

FontFamily="Segoe UI Symbol" Text="{Binding Pivot7Days.EmojiWeekendSummary, Converter={StaticResource EmoticonConverter}}"

Konverterklasse:

switch (input)
{
    case "happy":
        return "\u1F60A";
    case "sad":
        return "\u1F60B";
    default:
        return "\u1F610";
}

Ich erhalte ein völlig anderes Zeichen, gefolgt vom letzten Zeichen in der zurückgegebenen Zeichenfolge, wie z. B. 'A', 'B' oder '0'. Wenn ich zum Beispiel ein Gesicht mit ausgestreckter Zunge sehen sollte (U + 1F60B), erhalte ich stattdessen Folgendes:

Verwende ich die falsche Escape-Sequenz in meinem Code dahinter?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage