-
在公共类Common中创建一个静态类MyPopup
public static class MyPopupHelper
{
#region 在popup中的textbox能够中英文切换
[DllImport(“User32.dll”)]
public static extern IntPtr SetFocus(IntPtr hWnd);public static IntPtr GetHwnd(Popup popup) { HwndSource source = (HwndSource)PresentationSource.FromVisual(popup.Child); return source.Handle; } #endregion
#region 移动popup窗口
[DllImport(“user32.dll”)]
public static extern IntPtr WindowFromPoint(POINT Point);
[DllImport(“user32.dll”)]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool GetCursorPos(out POINT lpPoint);
[DllImportAttribute(“user32.dll”)]
public static extern IntPtr SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam);
[DllImportAttribute(“user32.dll”)]
public static extern bool ReleaseCapture();
[StructLayout(LayoutKind.Sequential)]
public struct POINT
{
public int X;
public int Y;
}
#endregion
} -
调用
if ((o as Popup).IsOpen == true)
{
IntPtr handle = Common.MyPopup.GetHwnd(o as Popup);
MyPopup.SetFocus(handle);
}
Popup中textBox不能中英文切换问题
最新推荐文章于 2022-05-20 12:34:05 发布