C# 如何以编程方式禁用Tablet模式?

C# 如何以编程方式禁用Tablet模式?,c#,windows-10,C#,Windows 10,我有一个Surface Pro,我用手写笔绘制草图。我希望能够在不进入设备管理器的情况下快速启用/禁用平板电脑模式 我一直在寻找这样做的方法:通过禁用驱动程序,通过HID禁用,但对于我所需要的,我发现的一切似乎都过于复杂。我正在创建一个带有复选框的表单。最简单的方法是什么?您可以尝试将注册表项设置为0之类的方法 HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\ImmersiveShell] "TabletMode"=dwor

我有一个Surface Pro,我用手写笔绘制草图。我希望能够在不进入设备管理器的情况下快速启用/禁用平板电脑模式


我一直在寻找这样做的方法:通过禁用驱动程序,通过HID禁用,但对于我所需要的,我发现的一切似乎都过于复杂。我正在创建一个带有复选框的表单。最简单的方法是什么?

您可以尝试将注册表项设置为0之类的方法

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\ImmersiveShell]
"TabletMode"=dword:00000000
如果TabletMode=1,则将启用它

    RegistryKey myKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\ImmersiveShell", true);
   if(myKey != null)
   {
   myKey.SetValue("TabletMode", "0", RegistryValueKind.dWord);
   myKey.Close();
   }

平板电脑模式不受设备管理器控制,它是操作系统的一项功能。你应该看看你感兴趣的操作系统的SDK(尽管我怀疑它至少是Windows8)。如果这个问题也带有适当的操作系统标签,那么它更有可能得到答案。你在用什么操作系统?我已经重新标记了。我在Windows 10Sean中工作:myKey返回Null。将其更改为Registry.CurrentUser。。。并摆脱了“HKEY…”我第一次错过了那个,我道歉。我已经三年没有碰过注册表键了;这只是内存中的信息。我将TabletMode设置为1,但Tablet模式没有打开。然而,注册表值确实发生了变化。我也做了同样的事情。它没有切换到平板电脑模式。