Tôi có một ứng dụng Windows WPF. Tôi cần phải thay đổi màu nền của thanh tiêu đề. Làm thế nào tôi có thể làm điều đó?Thay đổi màu nền thanh tiêu đề WPF
Trả lời
Trong WPF thanh tiêu đề là một phần của khu vực không phải khách hàng, không thể sửa đổi thông qua lớp cửa sổ WPF. Bạn cần thao tác xử lý Win32 (nếu tôi nhớ chính xác).
Bài viết này có thể hữu ích cho bạn: Custom Window Chrome in WPF.
Bạn cũng có thể tạo ra một cửa sổ không biên giới, và làm cho biên giới và danh hiệu bar mình
Nhưng sau đó bạn phải tự xây dựng tất cả các chức năng của thanh tác vụ (như di chuyển, phóng to/khôi phục kích thước khi nhấp đúp, đóng đúp vào biểu tượng, ...). –
vâng ... nhưng không có vấn đề gì lớn, ví dụ phương pháp DragMove giúp dễ dàng di chuyển, và phần còn lại là hòa tan bánh;) –
tôi biết ... nhưng việc xây dựng một thanh tiêu đề của riêng tôi giống như một mẹo bẩn đối với tôi (Ngoài việc tạo ra cùng một cái nhìn & cảm thấy là một nhiệm vụ khá khó khăn) –
Dưới đây là một ví dụ về cách đạt được điều này:
<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>
Xử lý Bấm Sự kiện trong mã -phía sau.
Đối MouseDown -
App.Current.MainWindow.DragMove();
Đối Minimize Button -
App.Current.MainWindow.WindowState = WindowState.Minimized;
Đối với DoubleClick và 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;
}
Tôi hy vọng điều này sẽ giúp.
-Sushant
ApplicationCommands.Close không làm việc cho tôi. Tôi đã sử dụng Application.Current.MainWindow.Close(); trong một lệnh. Ngoài ra không có DoubleClick for Grid, tôi đã sử dụng MouseLeftButtonDown và sử dụng tính năng này. if (e.ClickCount == 2) { Phóng to(); } else { Application.Current.MainWindow.DragMove(); } – Tempeck
Kiểm tra các mẫu sau WPF customizing the appearance of a window in XAML
mẫu này cho thấy làm thế nào để hoàn toàn tùy chỉnh phong cách/sự xuất hiện của một cửa sổ, bao gồm các lĩnh vực phi khách hàng: thanh tiêu đề, biên giới, max, min và nút đóng trong khi vẫn cung cấp tất cả các chức năng dự kiến.
- 1. Thay đổi màu nền của tiêu đề Danh sách WinView
- 2. Cách thay đổi màu nền tiêu đề của một QTableView
- 3. Thay đổi Thanh Hành động Màu tiêu đề
- 4. Cách thay đổi màu của thanh tiêu đề không có chủ đề
- 5. Đặt màu nền cho thanh tiêu đề Dialog?
- 6. Thay đổi màu nền trên hàng, nhưng không thay đổi tiêu đề hàng
- 7. UITableView tiêu đề thay đổi tiêu đề màu
- 8. Thay đổi màu nền của ScrollBar trong ScrollViewer WPF
- 9. thay đổi màu nền
- 10. Cách thay đổi màu nền của thanh trạng thái android
- 11. Thay đổi màu nền ActionBarSherlock
- 12. Wpf nền màu animate
- 13. Làm cách nào để thay đổi màu nền tiêu đề của JTable?
- 14. Làm cách nào để thay đổi màu nền của tiêu đề ActionBar?
- 15. Thay đổi màu nền của Tiêu đề dữ liệu trong Silverlight
- 16. Thay đổi Navigationbar màu (màu nền)
- 17. Thay đổi màu nền UIButton
- 18. select2 thay đổi màu nền
- 19. Làm thế nào để thay đổi màu sắc của thanh tiêu đề xem RCP Eclipse
- 20. Làm thế nào để thay đổi màu sắc thanh tiêu đề trong hoạt động Android?
- 21. Cách thay đổi màu tiêu đề của thanh tác vụ trong mã
- 22. Thay đổi màu của phần tiêu đề trong UITableview
- 23. Thay đổi màu nền của tab ActionBar
- 24. QTextEdit thay đổi màu nền cũng là màu sắc của thanh cuộn
- 25. Thay đổi màu nền bằng jQuery Mobile
- 26. Thay đổi màu nền của ô intellij
- 27. Thay đổi màu nền trên NSAttributedString
- 28. không thể thay đổi màu nền UITableViewCell
- 29. Thay đổi màu nền UIView lập trình
- 30. Thay đổi màu nền của một NSCollectionView
Related: http://stackoverflow.com/questions/9978444/how-can-i-style-the-border-and-title-bar-of-a-window-in-wpf. – DuckMaestro