public void ShowForm(ICSharpCode.TextEditor.TextArea textArea, Point logicTextPos) { frm = new DynamicTreeRow.ChildForm(); frm.AllowResizing = false; frm.Owner = textArea.FindForm(); int ypos = (textArea.Document.GetVisibleLine(logicTextPos.Y) + 1) * textArea.TextView.FontHeight - textArea.VirtualTop.Y; Point p = new Point(0, ypos); p = textArea.PointToScreen(p); p.X = Control.MousePosition.X - 16; p.Y -= 1; frm.StartPosition = FormStartPosition.Manual; frm.ShowInTaskbar = false; frm.Location = p; frm.ClientSize = new Size(Width + 2, row.Height + 2); Dock = DockStyle.Fill; frm.Controls.Add(this); frm.ShowWindowWithoutActivation = true; frm.Show(); textArea.Click += OnTextAreaClick; textArea.KeyDown += OnTextAreaClick; frm.ClientSize = new Size(frm.ClientSize.Width, row.Height + 2); }