Was ist das C# - äquivalent von ChrW(e.KeyCode)?
In VB.NET 2008 habe ich die folgende Anweisung:
MyKeyChr = ChrW(e.KeyCode)
Möchte ich nun konvertieren Sie die obige Anweisung in C#.
Irgendwelche Ideen?
InformationsquelleAutor der Frage Paramu | 2011-05-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sieht aus wie das C# - äquivalent wäre
Jedoch
e.KeyCode
enthält keine Unicode-codepoint, also diese Umwandlung ist bedeutungslos.InformationsquelleAutor der Antwort Timwi
Quick-and-dirty-äquivalent
ChrW
in C# ist einfach Gießen Sie den Wert aufchar
:Die mehr und mehr expressive version ist die Verwendung eines conversion-Klassen statt, wie
System.Text.ASCIIEncoding
.Oder man könnte sogar die eigentliche VB.NET Funktion in C# durch Einlesen der
Microsoft.VisualBasic
namespace. Dies ist wirklich nur dann nötig, wenn Sie sich auf einige der speziellen Prüfungen durch dieChrW
Methode unter der Haube, diejenigen, die Sie wahrscheinlich sollte nicht zählen auf jeden Fall. Code würde in etwa so Aussehen:Jedoch, dass nicht garantiert wird, um zu produzieren, genau das, was Sie wollen, in diesem Fall (und weder war der ursprüngliche code). Nicht alle Werte in der
Keys
Aufzählung sind ASCII Werte, also nicht alle von Ihnen können direkt konvertiert werden, um ein Zeichen. Insbesondere, castingKeys.NumPad1
et. al. zuchar
würde nicht zum richtigen Wert.InformationsquelleAutor der Antwort Cody Gray
Wahrsten Art und Weise zu übersetzen, der code ist zu verwenden VB.Net runtime-Funktion aus C#
Wenn Sie möchten, um zu vermeiden, eine Abhängigkeit von der VB.Net Laufzeit, wenn man diese abgespeckte version
InformationsquelleAutor der Antwort JaredPar