¿Hay alguna manera de cambiar el estilo de la cuadrícula en la red wpf? Necesito dividir la cuadrícula en 4 celdas. Para hacerlo utilicé RowDefinitions y ColumnDefinitions. Sin embargo, necesito que el usuario distinga qué celda es la que, por eso, necesito cambiar el color de las líneas de la cuadrícula.wpf gridlines - cambio de estilo
Respuesta
Depende del estilo que esté buscando. En WPF, hay diferentes maneras de hacer casi cualquier cosa. Aquí hay algunos de los más fáciles.
La forma más fácil es establecer ShowGridlines = "true":
<Grid HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Margin="5"
ShowGridLines="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="(0,0)" />
<TextBlock Grid.Column="1"
Grid.Row="0"
Text="(1,0)" />
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="(0,1)" />
<TextBlock Grid.Column="1"
Grid.Row="1"
Text="(1,0)" />
</Grid>
Eso le da rejilla algo como:
También puede utilizar un rectángulo en cada celda de la cuadrícula para obtener diferentes efectos Aquí, el relleno es transparente y el accidente cerebrovascular es azul:
<Grid HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Margin="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Rectangle Grid.Column="0"
Grid.Row="0"
Stroke="Blue"
Fill="Transparent" />
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="(0,0)" />
<Rectangle Grid.Column="1"
Grid.Row="0"
Stroke="Blue"
Fill="Transparent" />
<TextBlock Grid.Column="1"
Grid.Row="0"
Text="(1,0)" />
<Rectangle Grid.Column="0"
Grid.Row="1"
Stroke="Blue"
Fill="Transparent" />
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="(0,1)" />
<Rectangle Grid.Column="1"
Grid.Row="1"
Stroke="Blue"
Fill="Transparent" />
<TextBlock Grid.Column="1"
Grid.Row="1"
Text="(1,0)" />
</Grid>
que produce esto:
lo prefiere, puede llenar el rectángulos y no darles un accidente cerebrovascular:
<Grid HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Margin="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Rectangle Grid.Column="0"
Grid.Row="0"
Fill="LightBlue" />
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="(0,0)" />
<Rectangle Grid.Column="1"
Grid.Row="0"
Fill="LightYellow" />
<TextBlock Grid.Column="1"
Grid.Row="0"
Text="(1,0)" />
<Rectangle Grid.Column="0"
Grid.Row="1"
Fill="LightYellow" />
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="(0,1)" />
<Rectangle Grid.Column="1"
Grid.Row="1"
Fill="LightBlue" />
<TextBlock Grid.Column="1"
Grid.Row="1"
Text="(1,0)" />
</Grid>
Eso puede, por ejemplo, dar un patrón de tablero de ajedrez:
Esto no es de ninguna manera una respuesta integral, probablemente puedas llenar un libro. Simplemente tenía la intención de mostrar que hay muchas maneras de hacer lo que está pidiendo, y que hay algunas soluciones bastante rápidas y fáciles, si eso es todo lo que necesita.
- 1. Cambio de la plantilla de WPF StackPanel
- 2. Desactivar estilo en WPF XAML?
- 3. Estilo ContextMenu predeterminado - WPF
- 4. Encuadernación WPF en estilo
- 5. Aplicar estilo WPF predeterminado
- 6. Estilo Elementos WPF ComboBox
- 7. WPF - ¿Estilo global?
- 8. Cómo desencadenar un cambio de estilo si DataContext es nulo o no se usa WPF
- 9. Estilo WPF DataGrid-Silverlight DataGrid?
- 10. Estilo/plantilla parametrizada en WPF?
- 11. Barra de desplazamiento de estilo Apple WPF
- 12. Estilo de fila seleccionada de WPF DataGrid
- 13. Cambiar un estilo dinámicamente en WPF
- 14. WPF: evento de cambio de tamaño GridViewColumn
- 15. WPF - Cambio de la aplicación WPF a xbap
- 16. Estilo WPF sin tipo de destino?
- 17. WPF estilo personalizado de control derivada
- 18. "heredar" estilo de tema en wpf
- 19. WPF: ¿Cómo animar el cambio de color?
- 20. Cambio margen de programación en WPF/C#
- 21. Forma correcta de reemplazar valores de estilo en WPF
- 22. ¿Estilo basado en ubicación en WPF posible?
- 23. Estilo WPF basado en la corriente
- 24. El cambio de estilo CSS de código ASP.NET
- 25. ¿Cómo cambio el estilo de animación de un jQuery Accordion?
- 26. WPF no aplica estilo al primer elemento
- 27. Ignora el estilo predeterminado en WPF
- 28. ¿Cómo cambio el estilo de resaltado en Vim spellcheck?
- 29. ¿Cómo cambio mi hoja de estilo CSS usando jQuery?
- 30. Cambio de FlowDirection de una celda en DataGrid de Wpf
Entonces, ¿cómo se obtiene una cuadrícula de un píxel de ancho? –
Pero eso hará que los bordes interiores tengan el ancho doble –
@WonkotheSane: Eso no funcionará. 'StrokeThickness' es un simple' doble'. Para lograr algo similar, utilice un 'Border' en lugar de un' Rectangle': ' ' –