¿Cómo sería posible generar un nuevo formulario, p. Form2
de Form1
, pero asegúrese de Form2
es adyacente a Form1
, por ejemplo:Mostrar otro formulario adyacente al que se generó de C#
8
A
Respuesta
4
Pruebe a manejar el evento LocationChanged
del formulario principal.
demostración simple:
public partial class Form1 : Form {
Form2 f2;
public Form1() {
InitializeComponent();
this.LocationChanged += new EventHandler(Form1_LocationChanged);
}
private void button1_Click(object sender, EventArgs e) {
f2 = new Form2();
f2.StartPosition = FormStartPosition.Manual;
f2.Location = new Point(this.Right, this.Top);
f2.Height = this.Height;
f2.Show();
}
void Form1_LocationChanged(object sender, EventArgs e) {
if (f2 != null)
f2.Location = new Point(this.Right, this.Top);
}
}
6
Algo así como:
// button click handler method
Form2 child = new Form2();
child.Location = new Point(this.Location.X + this.Width,
this.location.Y);
child.Show();
Tome la coordenada X de la ubicación del objeto de formato actual y añadir a es el ancho de la forma, obteniendo así la coordenada X de la nueva forma. La coordenada Y se mantiene igual.
3
public partial class Form1 : Form
{
Form2 frm2;
public Form1()
{
InitializeComponent();
frm2 = new Form2(this);
frm2.Show();
}
}
Y:
public partial class Form2 : Form
{
Form1 frm1;
public Form2(Form1 frm1)
{
InitializeComponent();
this.frm1 = frm1;
frm1.Move += new EventHandler(Form1_Move);
}
void Form1_Move(object sender, EventArgs e)
{
this.Location = new Point(frm1.Location.X + frm1.Width, frm1.Location.Y);
}
}
EDIT: (Debido a un comentario)
Para hacer Form1
siguen Form2
así, añadir:
Move += new EventHandler(Form2_Move);
Para Form2
's constructor .
Y:
void Form2_Move(object sender, EventArgs e)
{
frm1.Location = new Point(Location.X - frm1.Width, Location.Y);
}
En su clase.
3
Tal vez esto le ayudará. Button1 en Form1 es
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.StartPosition = FormStartPosition.Manual;
form2.SetDesktopLocation(this.Location.X + this.Width, this.Location.Y);
form2.ShowDialog();
}
Cuestiones relacionadas
- 1. En un controlador de excepción C#, ¿puedo encontrar los parámetros que se pasaron al método que generó la excepción?
- 2. cómo mostrar formulario frente en C#
- 3. C#/Linq conseguir conjuntos con adyacente
- 4. ¿Cerrar un formulario desde otro formulario?
- 5. cómo mostrar CFStringType? Al igual que kABHomeLabel
- 6. ¿Mostrar un diálogo/formulario de copia de archivos mientras se copian archivos manualmente en C#?
- 7. Mostrar PDF como formulario HTML
- 8. Rieles Renderice parte de un formulario dentro de otro formulario
- 9. ¿Cómo acceder a un control de formulario para otro formulario?
- 10. Pasar datos al primer formulario del segundo formulario en C#
- 11. Forma correcta de destruir un formulario y mostrar otro en Delphi
- 12. jQuery seleccionando el elemento adyacente
- 13. Propagación de eventos de un formulario a otro Formulario en C#
- 14. C# Windows Formulario: Al cerrar Haga [Proceso]
- 15. Para mostrar un nuevo formulario al hacer clic en un botón en C#
- 16. C# - Mostrar las diferencias al comparar cadenas
- 17. cómo usar SSL en C++ gSOAP generó clases
- 18. Git Mostrar a otro editor
- 19. Accediendo al formulario principal desde el formulario
- 20. Evitar que se llame a un método antes que otro
- 21. Obtener la dirección de error que generó una señal UNIX
- 22. cómo encontrar el componente fuente que generó un DocumentEvent
- 23. Animar desde fuera de pantalla con TranslateAnimation hace que se recorte la vista adyacente
- 24. Ocultar/Mostrar Div después de enviar formulario?
- 25. C#: Mostrar cuadro de diálogo en el hilo de la interfaz de usuario de otro hilo
- 26. Javascript-CSS Mostrar y Ocultar elementos de formulario
- 27. Obtener bytes para una clase que se generó en el tiempo de ejecución
- 28. ¿Cómo agrego una contraseña a una clave privada de OpenSSH que se generó sin una contraseña?
- 29. ¿Cómo mostrar una notificación emergente al usuario que usa jquery?
- 30. Abrir archivo Nerdtree en división no adyacente
las formas tienen un [ 'propiedad Location'] (http://msdn.microsoft.com/en-us/library/ms159414.aspx). ¿Eso ayuda? –
@Cody Gray Sí, lo hace gracias – Mike