Tengo dos formularios, mi formulario principal es Form1 y mi formulario secundario se muestra a pedido ya que el diálogo es Form2. Ahora si llamo a Form2 aparece siempre en la esquina superior izquierda de mi pantalla. La primera vez pensé que mi forma no estaba allí, pero luego la vi colgando en la esquina superior de la pantalla. Me gustaría mostrar mi formulario en la posición actual del mouse donde el usuario hace clic en un menú contextual para mostrar el cuadro de diálogo modal. Ya he probado cosas diferentes y busqué ejemplos de código. Pero no encontré nada además de miles de códigos diferentes sobre cómo obtener la posición real del mouse de diferentes maneras que ya sé. Pero esta posición siempre es relativa a la pantalla, la forma principal, el control o cualquiera que sea el contexto actual. Aquí mi código (el posicionamiento de escritorio que también probé no funciona y centros de centro a la pantalla la forma única, así que me fui a la propiedad Windows.Default.Position):C# cómo mostrar un formulario en una posición específica del mouse en la pantalla?
Form2 frm2 = new Form2();
frm2.textBox1.Text = listView1.ToString();
frm2.textBox1.Tag = RenameFile;
DialogResult dlgres=frm2.ShowDialog(this);
frm2.SetDesktopLocation(Cursor.Position.X, Cursor.Position.Y);
¿Has probado mi sugerencia? ¿Implementaron el constructor modificado y eso no funcionó? –
@feedwall - Me alegro de que funcionó para usted (y gracias por el voto favorable y acepto) –
StartPosition debe configurarse en Manual – ehh