В моих приложениях реализована Windows-клавиатура:
[ComImport, Guid("4ce576fa-83dc-4F88-951c-9d0782b4e376")]
class UIHostNoLaunch
{
}
[ComImport, Guid("37c994e7-432b-4834-a2f7-dce1f13b834b")]
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
interface ITipInvocation
{
void Toggle(IntPtr hwnd);
}
[DllImport("user32.dll", SetLastError = false)]
static extern IntPtr GetDesktopWindow();
public static void ShowWindowsKeyboard()
{
var uiHostNoLaunch = new UIHostNoLaunch();
var tipInvocation = (ITipInvocation)uiHostNoLaunch;
tipInvocation.Toggle(GetDesktopWindow());
Marshal.ReleaseComObject(uiHostNoLaunch);
}
Клавиатура отображается с помощью функции переключения, мой вопрос - можете ли вы заставить клавиатуру появляться с определенной функцией иисчезнуть с другой функцией вместо использования переключателя?
Например, textbox_OnGotFocus (EventArgs e) {некоторый код, который делает клавиатуру видимой} textBox_OnLostFocus (EventArgs e) {некоторый код, который делает клавиатуру исчезающей}