簡體   English   中英

自定義樣式未顯示在頁面中

[英]Customised Style not showing in pages

我已經為此工作了一段時間,遇到了我無法解決的難題。

我擁有的自定義樣式適用於某些元素,而不適用於其他元素。 例如,當我只規定了TextBlock字體時,它適用於字體,甚至可以格式化按鈕字體。

它將忽略的大多數其他設置,例如面板,堆棧面板。 無奈之下,我同時設置了stackpanel和panel以及NavigationWindow和Pages。 我嘗試將設置更改為許多不同的元素以對其進行測試。

同樣,某些代碼完成將顯示其中一些的選項,而其他則不會。 這似乎與正在渲染的內容和未渲染的內容無關。

我懷疑我沒有進口。 任何幫助表示贊賞。

APP XAML

<Application x:Class="My.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="MainWindow.xaml">
<Application.Resources>
    <Style x:Key="MyWindowStyle">
        <Setter Property="Panel.Background" Value="Chocolate" />
        <Setter Property="StackPanel.Background" Value="Chocolate" />
        <Setter Property="StackPanel.HorizontalAlignment" Value="Stretch" />
        <Setter Property="TextBlock.FontWeight" Value="Bold" />
        <Setter Property="TextBlock.FontSize" Value="20" />
        <Setter Property="Button.Background" Value="White" /> .. ETC

PAGE XAML

<Page x:Class="My.HomePage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" Style="{StaticResource MyWindowStyle}"
    mc:Ignorable="d" Title="HomePage">      

主窗口XAML

<NavigationWindow x:Class="My.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="My App" Height="Auto" Source="HomePage.xaml"
    Style="{StaticResource MyWindowStyle}" WindowState="Maximized"></NavigationWindow>

我認為問題是由不同UI元素的樣式混合引起的。 您應該使用樣式中的TargetType=屬性為TextBoxStackPanel等定義單獨的樣式。

而且,根據我的經驗,為Window設置樣式(沒有使用Page經驗)通常是行不通的。 我恢復到在Window本身上設置其屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM