¿Cómo coloco un borde en mi cuadrícula en C # / WPF?
Esto es lo que me gustaría que fuera, pero pone un borde alrededor de todo en lugar del control de cuadrícula que puse en mi aplicación.
<Grid>
<Border BorderBrush="Black" BorderThickness="2">
<Grid Height="166" HorizontalAlignment="Left" Margin="12,12,0,0" Name="grid1" VerticalAlignment="Top" Width="479" Background="#FFF2F2F2" />
</Border>
... and so on ...
Respuestas:
Si solo desea un borde exterior, la forma más fácil es ponerlo en un control de borde:
La razón por la que ve que el borde ocupa completamente su control es que, de forma predeterminada, HorizontalAlignment y VerticalAlignment están configurados en Estirar. Intente lo siguiente:
Esto debería darte lo que buscas (aunque es posible que desees dejar un margen en los 4 lados, no solo en 2 ...)
fuente
Si anida su cuadrícula en un control fronterizo
no hace lo que quiere, entonces tendrá que crear su propia plantilla de control para la cuadrícula (o borde) que SÍ hace lo que quiere.
fuente
Creo que su problema es que el margen debe especificarse en la etiqueta del borde y no en la cuadrícula.
fuente
Esta es una respuesta posterior que me funciona, si puede ser de utilidad para alguien en el futuro. Quería un borde simple alrededor de los cuatro lados de la cuadrícula y lo logré así ...
fuente
Grid
control no tiene unBorderBrush
atributo, peroDataGrid
sí ...Este código envuelve un borde dentro de "innerGrid"
fuente
Si alguien está interesado en un problema similar, pero no funciona con XAML, esta es mi solución:
fuente