2012-07-18 4 views
14

Lo que tengo:Anclaje - Hacer dos componentes ocupan la mitad del panel de cada

tengo un panel (el espacio en blanco), y dos DataGridViews representados por los cuadrados verdes y azules. El panel está anclado para ocupar la mayor parte del centro de la pantalla, y crece/se contrae con el tamaño de la ventana.

lo que necesito:

Me gustaría que el cuadrado verde para permanecer siempre con su borde derecho en el centro de la pantalla, que cargue con la mitad izquierda de la pantalla. Igualmente, me gustaría que el cuadrado azul se quede con el borde izquierdo en el medio y que ocupe la mitad derecha de la pantalla.

Básicamente, solo quiero que siempre luzca como esta imagen independientemente.

¿Tengo que hacer esto programáticamente? Parece que no puedo encontrar una combinación de anclaje o acoplamiento que haga que esto suceda, y agregar más paneles como contenedores produce el mismo problema al final.

DataGridViews In Panel Layout

+0

No, los cuadrados verdes y azules se superponen si lo hace porque van a estirar mucho, mucho más grande, pero seguirá siendo el mismo ancho de píxel desde la izquierda/derecha. Gracias aunque :) –

+0

es mi sugerencia trabajando? – Turbot

+0

Funcionó perfecto una vez que tuve tiempo de probarlo :) gracias. –

Respuesta

21

No estoy seguro si esto es lo que quiere:

  1. Creación de una SplitContainer en la pantalla.

    Anchor = Top, Bottom, Left, Right 
    IsSplitterFixed = True (Trick) 
    
  2. Creación otros dos datagridviews, cada uno, un lado interior de la SplitterContainer

    Dock = Fill 
    
+0

Ni siquiera pensé en buscar un contenedor específicamente para esa situación. : p Gracias. –

12

por lo general utilizan un TableLayoutPanel para lograr esto. Es muy fácil de usar (se puede encontrar una introducción simple en here).

Crea en celdas en la primera fila y ajústela al 50% de ancho cada una. En cada celda, coloca DataGrid y configura su Dock 'ing a Fill.

+0

Gracias por la ayuda :) –

Cuestiones relacionadas