正在尝试将SolidColorBrush资源应用于HeaderedContentControl BorderBrush
本文关键字:资源 应用于 HeaderedContentControl BorderBrush SolidColorBrush | 更新日期: 2023-09-27 18:29:34
我想将窗口中的SolidColorBrush链接到字典中的另一个SolidColorBrush。我没有发现这样的东西,也许这是不可能的。。。
这是我的"ResourceDictionary.xaml"中的代码
<SolidColorBrush x:Key="BrushBlueTransparent" Color="#33006D8F"/>
在我的窗口中,我想要一个这样的资源链接:
<SolidColorBrush x:Key="ControlColor" Color="{Binding Source={DynamicResource BrushEvasanOrange}}"/>
目前,此代码不起作用。。。
我想使用这个链接,因为我想在我的页面中多次使用这个资源,如果将来必须更改颜色,用这种方式更改可能很容易。
Brush资源的使用方式如下:
<HeaderedContentControl
x:Name="_demandeur"
BorderBrush="{DynamicResource BrushEncadre}"
BorderThickness="1"
Padding="10"
Margin="0,20,0,0"
Header="{x:Static p:Resources.EV_Demandeur}"
>
<WrapPanel
Margin="0"
Orientation="Horizontal"
HorizontalAlignment="Left"
>
<TextBlock
TextWrapping="Wrap"
FontWeight="Normal"
Text="text"
/>
</WrapPanel>
</HeaderedContentControl>
听起来你的问题是HeaderedContentControl
忽略了它的BorderBrush
属性。有两种方法可以解决这个问题:一种是用在内容周围显示边框的方法替换HeaderedContentControl
的Template
,但这会带来很多麻烦。另一个是使用HeaderedContentControl
的子类,该子类已经有了您想要的模板(我们将讨论最后一个)。
一个非常简单的选项是简单地在控件周围放置一个Border
,并将Margin
移动到Border
,因此橙色边界线将位于边距内。在您的具体情况下,这不是正确的答案,但对于"如何在XAML中设置边界?"来说,这是一个很好的通用答案
<Border
BorderBrush="{StaticResource BrushEncadre}"
BorderThickness="1"
Margin="0,20,0,0"
>
<HeaderedContentControl
x:Name="_demandeur"
Padding="10"
Header="{x:Static p:Resources.EV_Demandeur}"
>
<WrapPanel
Margin="0"
Orientation="Horizontal"
HorizontalAlignment="Left" >
<TextBlock
TextWrapping="Wrap"
FontWeight="Normal"
Text="text"
/>
</WrapPanel>
</HeaderedContentControl>
</Border>
但我想知道HeaderedContentControl
是否真的是你想要的。CCD_ 10是用于显示具有标题的内容的各种控件的基类。子类更常用,我有一种感觉,你在这里真正想要的是GroupBox
,它是其中一个子类。你会像使用HeaderedContentControl
:一样使用它
<GroupBox
x:Name="_demandeur"
Padding="10"
Margin="0,20,0,0"
Header="{x:Static p:Resources.EV_Demandeur}"
BorderBrush="{StaticResource BrushEncadre}"
BorderThickness="1"
>
<WrapPanel
Margin="0"
Orientation="Horizontal"
HorizontalAlignment="Left" >
<TextBlock
TextWrapping="Wrap"
FontWeight="Normal"
Text="text"
/>
</WrapPanel>
</GroupBox>