Tengo una aplicación WPF de Windows. Necesito cambiar el color de fondo de la barra de título. ¿Cómo puedo hacer eso?Cambio del color de fondo de la barra de título de WPF
Respuesta
En WPF, la barra de título es parte del área no cliente, que no se puede modificar a través de la clase de ventana de WPF. Necesita manipular los identificadores de Win32 (si no recuerdo mal).
Este artículo podría ser útil para usted: Custom Window Chrome in WPF.
También puede crear una ventana sin bordes, y hacer que los bordes y barra de título mismo
Pero luego tiene que crear todas las funcionalidades de la barra de tareas usted mismo (como mover, maximizar/restaurar tamaño con doble clic, cerrar haciendo doble clic en el icono, ...). –
sí ... pero no es gran cosa, por ejemplo, el método DragMove facilita la tarea de mover, y el resto es paz de pastel;) –
lo sé ... pero construir una barra de título propia me parece un sucio truco . (además de crear el mismo Look & Feel es una tarea bastante difícil) –
He aquí un ejemplo de cómo lograr esto:
<Grid DockPanel.Dock="Right"
HorizontalAlignment="Right">
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Right"
VerticalAlignment="Center">
<Button x:Name="MinimizeButton"
KeyboardNavigation.IsTabStop="False"
Click="MinimizeWindow"
Style="{StaticResource MinimizeButton}"
Template="{StaticResource MinimizeButtonControlTemplate}" />
<Button x:Name="MaximizeButton"
KeyboardNavigation.IsTabStop="False"
Click="MaximizeClick"
Style="{DynamicResource MaximizeButton}"
Template="{DynamicResource MaximizeButtonControlTemplate}" />
<Button x:Name="CloseButton"
KeyboardNavigation.IsTabStop="False"
Command="{Binding ApplicationCommands.Close}"
Style="{DynamicResource CloseButton}"
Template="{DynamicResource CloseButtonControlTemplate}"/>
</StackPanel>
</Grid>
</DockPanel>
Mango Haga clic en Eventos en el código -detrás.
Para MouseDown -
App.Current.MainWindow.DragMove();
Para Minimizar Botón -
App.Current.MainWindow.WindowState = WindowState.Minimized;
Para DoubleClick y MaximizeClick
if (App.Current.MainWindow.WindowState == WindowState.Maximized)
{
App.Current.MainWindow.WindowState = WindowState.Normal;
}
else if (App.Current.MainWindow.WindowState == WindowState.Normal)
{
App.Current.MainWindow.WindowState = WindowState.Maximized;
}
espero que esto ayude.
-Sushant
ApplicationCommands.Close no funcionó para mí. Usé Application.Current.MainWindow.Close(); en un comando. Tampoco hay DoubleClick for Grid, utilicé MouseLeftButtonDown y lo usé. if (e.ClickCount == 2) { Maximizar(); } else { Application.Current.MainWindow.DragMove(); } – Tempeck
Comprobar el siguiente ejemplo WPF customizing the appearance of a window in XAML
Este ejemplo muestra cómo personalizar completamente el estilo/aparición de una ventana, incluyendo las áreas que no son clientes: barra de título, bordes, máximo, mínimo y cierre los botones mientras sigue brindando toda la funcionalidad esperada.
- 1. Establecer color de fondo de la barra de título AlertBox
- 2. ¿Establecer el color de fondo para la barra de título del cuadro de diálogo?
- 3. QTextEdit cambio de color de fondo también el color de la barra de desplazamiento
- 4. cambio de color de fondo
- 5. de la barra de título
- 6. Cambiar el color de fondo de la barra de desplazamiento ScrollViewer WPF
- 7. Cambio de la barra de navegación Título de UIImagePickerController
- 8. jQuery validar el cambio de color del fondo del elemento
- 9. cambiar el color de fondo del elemento de navegación (barra)
- 10. Cambio del color de fondo de un JToggleButton seleccionado
- 11. Cambiar el color de la barra de título en WinForm
- 12. WPF: ¿Cómo animar el cambio de color?
- 13. Botón de cambio Color de fondo a través del patrón MVVM en WPF
- 14. ¿Cómo configuro programáticamente el degradado de color de fondo en una barra de título personalizada?
- 15. Android: Custom barra de título
- 16. UITableview color de fondo al utilizar la barra de búsqueda
- 17. ¿Cómo cambio la vista de cuadrícula de datos del color de fondo de la fila seleccionada?
- 18. barra de progreso en la barra de título
- 19. título UIButton color del texto
- 20. iOS: cambiar globalmente el color del título de la barra de navegación con apariencia?
- 21. Transición del color de fondo
- 22. Cambiar el color del título principal de navegación en MFMailComposeViewController
- 23. Color de fondo del cajón deslizante
- 24. Animar cambio de color de fondo en Android
- 25. Cómo cambiar el color de la barra de título sin tema
- 26. Android - Cambiar fondo de título de cuadro de diálogo personalizado
- 27. ¿Es posible cambiar el color de la barra de título de la actividad sin FEATURE_CUSTOM_TITLE?
- 28. ¿Cómo cambiar el color de la barra de título en la actividad de Android?
- 29. Correo electrónico dentro de la aplicación del iPhone SDK 3.0 - cambio del color del tinte de la barra de navegación
- 30. gtk (mm) 3 botón cambio de color de fondo
Relacionados: http://stackoverflow.com/questions/9978444/how-can-i-style-the-border-and-title-bar-of-a-window-in-wpf. – DuckMaestro