[英]Apply MahApps.Metro theme and accent to other controls or rectangles
我正在嘗試在窗口底部放置一個狀態欄,使用與標題欄相同的顏色方案。 我知道我缺少的是樣式繼承和/或模板設置,但我已經閱讀了幾個小時,我無法弄明白。
這是我的窗口當前的樣子:
以下是它在設計師中的表現:
我想要的是:
窗口底部的狀態欄,用於反映標題欄的樣式。 我認識到我目前的實現可能不太好,所以我也願意改變我的狀態欄定義,如下所示。 我試圖使用一個實際的狀態欄,但它不會按照我想要的方式運行(文本框不會填充空白區域,因此命令行輸入文本框很難點擊 - 也許我只是做錯了什么)。 我假設我也可以像其他任何東西一樣將樣式應用於矩形,對吧? 我錯過了一個帶有style屬性的關鍵組件,可能是模板或靜態資源的用戶,但我完全迷失了。
這是我目前的解決方案(標簽和兩個用於狀態更新和cmdline的文本框):
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Label Grid.Column="0"/>
<Grid Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBox Grid.Row="0" Grid.Column="0"/>
<TextBox Grid.Row="0" Grid.Column="1"/>
</Grid>
</Grid>
我通過在狀態欄網格中使用AccentColorBrush
資源解決了這個問題。
<Grid Grid.Row="1" Background="{DynamicResource AccentColorBrush}">
我通過檢查GitHub上的MahApps.Metro中的許多XAML文件找到了它。 對於某些人來說這似乎是顯而易見的,但對於那些試圖學習XAML / WPF / MVVM的人來說,這並不是直截了當的。 我希望這可以幫助某些人,因為我已經掙扎了很長一段時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.