从WPF显示和隐藏屏幕键盘上的Windows 8

我正在为 Windows 8平板电脑编写一个WPF应用程序.它是完整的Windows 8,而不是ARM / RT.

用户输入文本框时,我使用以下代码显示屏幕键盘

System.Diagnostics.Process.Start(@"C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe");

这工作正常,但是我不知道如何再次隐藏键盘

有谁知道该怎么做?

另外,是否有任何方式可以调整我的应用程序的大小,以便在键盘出现时将对焦控件移开?有点像Windows RT应用程序.

非常感谢

我可以使用以下C#代码成功关闭屏幕键盘.
[DllImport("user32.dll")]
public static extern int FindWindow(string lpClassName,string lpWindowName);

[DllImport("user32.dll")]
public static extern int SendMessage(int hWnd,uint Msg,int wParam,int lParam);

public const int WM_SYSCOMMAND = 0x0112;
public const int SC_CLOSE = 0xF060;

private void cloSEOnscreenKeyboard()
{
    // retrieve the handler of the window  
    int iHandle = FindWindow("IPTIP_Main_Window","");
    if (iHandle > 0)
    {
        // close the window using API        
        SendMessage(iHandle,WM_SYSCOMMAND,SC_CLOSE,0);
    }  
}

private void Some_Event_Happened(object sender,EventArgs e)
{
    // It's time to close the onscreen keyboard.
    cloSEOnscreenKeyboard();
}

我希望这将有助于你.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...