Ink-Steuerelemente

Die Tablet PC-Plattform bietet zwei Steuerelemente: InkEdit und InkPicture,mit denen Sie Tablet PC-Anwendungen ganz einfach Freihand- und Handschrifterkennung hinzufügen können. Das InkEdit-Steuerelement verfügt über verwaltete, ActiveX- und Win32-Versionen, während InkPicture nur über die verwalteten InkPicture- und ActiveX-Versionen verfügt.

Der Hauptunterschied zwischen den Steuerelementen besteht darin, wie Daten gespeichert werden. Das InkEdit-Steuerelement speichert Ink Als Text standardmäßig, während InkPicture Ink als Ink speichert.

Das InkEdit-Steuerelement ist für die Texteingabe durch Handschrifterkennung vorgesehen. InkPicture ist für Anmerkungen vorgesehen (z. B. Markieren einer Präsentationsfolie oder eines anderen Bilds).

Erstellen Sie in verwaltetem Code Ink-Steuerelemente im gleichen Thread wie der Hauptthread für das Formular. Wenn ein InkEdit- oder InkPicture-Steuerelement in einem anderen Thread erstellt wird, reagiert Ihre Anwendung möglicherweise nicht ordnungsgemäß.

Sie sollten das Threadingmodell explizit in singlethread apartment (STA) ändern, bevor Sie ein Ink-Steuerelement erstellen. Dadurch wird das Steuerelement im Hauptthread erstellt. Sie können den folgenden verwalteten C++-Code verwenden, um das Threadingmodell explizit festzulegen.

Thread::get_CurrentThread()->set_ApartmentState(ApartmentState::STA);

Sie können den folgenden Code verwenden, um dasselbe in C zu # tun.

System.Threading.Thread.CurrentThread.ApartmentState = System.Threading.ApartmentState.STA;

Um einen Speicherverlust in verwaltetem Code zu vermeiden, müssen Sie explizit die Dispose-Methode für jedes Tablet PC-Steuerelement aufrufen, an das ein Ereignishandler angefügt wurde, bevor das Steuerelement den Gültigkeitsbereich übergibt.

In den folgenden Abschnitten werden Freihandsteuerelemente und die Verwendung von Freihandsteuerelementen in Anwendungen beschrieben: