Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 资源字典中的Metro样式_C#_Wpf_Xaml_Mahapps.metro - Fatal编程技术网

C# 资源字典中的Metro样式

C# 资源字典中的Metro样式,c#,wpf,xaml,mahapps.metro,C#,Wpf,Xaml,Mahapps.metro,我正在尝试用Mahapps Metro设计我的WPF应用程序。我已经在App.xaml的MergedDictionary中添加了所有需要的.xaml文件。如果在视图文件中写入以下内容 <Button DockPanel.Dock="Left" VerticalAlignment="Top" Style="{DynamicResource SquareButtonStyle}"/> 我收到一条错误消息 属性的设置 “System.Windows.ResourceDictionary.

我正在尝试用Mahapps Metro设计我的WPF应用程序。我已经在App.xaml的
MergedDictionary
中添加了所有需要的.xaml文件。如果在视图文件中写入以下内容

<Button DockPanel.Dock="Left" VerticalAlignment="Top" Style="{DynamicResource SquareButtonStyle}"/>
我收到一条错误消息

属性的设置 “System.Windows.ResourceDictionary.DeferrableContent”已导致 例外

(我对德语错误信息的处理)。那么,我如何设置所有按钮的样式,例如,使用
SquareButtonStyle
,而不必对每个按钮单独进行设置

编辑:这是我的app.xaml(最后一本字典ResourceDic.xaml是我自己的字典,上面的代码是):



Style
属性不能在任何元素的
Style
内设置。

只需在根级别(根资源字典或App.xmal资源)声明您的样式。只需使用
TargetType
按钮创建样式
不给它任何键。它将应用于应用程序中的所有按钮

例如:

<Style TargetType="Button" BasedOn="{StaticResource SquareButtonStyle}" >
        <Setter Property="Height" Value="50"/>
        <Setter Property="BorderThickness" Value="2,1" />
    </Style>

然后,只有您可以基于ResourceDictionary中的
SquareButtonStyle
创建按钮样式。

style
属性不能在任何元素的
style
内设置。

只需在根级别(根资源字典或App.xmal资源)声明您的样式。只需使用
TargetType
按钮创建样式
不给它任何键。它将应用于应用程序中的所有按钮

例如:

<Style TargetType="Button" BasedOn="{StaticResource SquareButtonStyle}" >
        <Setter Property="Height" Value="50"/>
        <Setter Property="BorderThickness" Value="2,1" />
    </Style>

然后,只有您可以基于ResourceDictionary中的
SquareButtonStyle
创建按钮样式。

我不想自己声明样式
SquareButtonStyle
是Mahapps Metro的预定义样式。抱歉,请参阅我的更新答案。您可以使用StyleThreaded的baseon属性
BasedOn=“{StaticResource SquareButtonStyle}”
BasedOn=“{DynmicResource SquareButtonStyle}”
-我仍然收到错误…您能给我SquareButtonStyle吗?您删除了Style=“{DynamicSource SquareButtonStyle}根据您的按钮定义?我不想自己声明样式。
SquareButtonStyle
是Mahapps Metro的预定义样式。抱歉,请查看我的更新答案。您可以使用StyleThreaded的baseon属性
BasedOn=“{StaticResource SquareButtonStyle}
BasedOn=“{DynMircource SquareButtonStyle}”“
-我仍然得到错误…您能给我SquareButtonStyle吗?您是否已从按钮定义中删除Style=“{DynamicResource SquareButtonStyle}”?
<Style TargetType="Button" BasedOn="{StaticResource SquareButtonStyle}" >
        <Setter Property="Height" Value="50"/>
        <Setter Property="BorderThickness" Value="2,1" />
    </Style>
<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="SquareButtonStyle dictionary"/>
</ResourceDictionary.MergedDictionaries>