This was bugging me for awhile, but it took me until now to get around to fixing it.
I had an issue with forms with text boxes near the bottom, and when the SIP (on-screen keyboard) is shown, then it completely hides the textbox. So I went googling and found this:
Manage soft input panel (SIP)
And with that knowledge, wrote a quick util method to automatically add this behavior:
public static void AddAutoInputPanelResizing (Control parent, IContainer iContainer) { var p = new Panel { Height = 0, Visible = false, Name = "SIP Placeholder", Dock = DockStyle.Bottom, }; parent.Controls.Add (p); p.SendToBack (); var ip = new InputPanel (iContainer); ip.EnabledChanged += (sender, e) => { parent.SuspendLayout (); p.Visible = ip.Enabled; p.Height = ip.Bounds.Height; parent.ResumeLayout (); }; }
Leave a Reply