gpt4 book ai didi

contentpresenter - 是否可以在 Silverlight ContentPresenter 中嵌入文本格式?

转载 作者:行者123 更新时间:2023-12-04 07:22:49 24 4
gpt4 key购买 nike

我刚刚开始使用样式和控件模板,并创建了以下样式来将按钮显示为网格中的文本。我想将字体样式嵌入到下划线样式中,但还没有弄清楚。

<Style x:Key="TextButtonStyle" TargetType="Button">
<Setter Property="Background" Value="LightGray" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ContentControl">
<ContentPresenter Content="{TemplateBinding Content}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

<Style x:Key="TextButtonInGridStyle" TargetType="Button" BasedOn="{StaticResource TextButtonStyle}">
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="Margin" Value="4,4,4,4" />
</Style>

我想将字体样式嵌入到下划线样式中,但还没有弄清楚。有没有办法在不将 TextBlock 嵌入 ControlTemplate 或在 Button 元素声明中嵌套 TextBlock 的情况下执行此操作?

谢谢

最佳答案

你绝对可以,或者我可能不明白这个问题,但看看这个例子是否是你所追求的:

<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"
x:Class="SilverlightApplication1.MainPage"
Width="640" Height="480">
<UserControl.Resources>
<Style x:Key="TextButtonStyle" TargetType="Button">
<Setter Property="Background" Value="LightGray" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ContentControl">
<ContentPresenter Content="{TemplateBinding Content}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="TextButtonInGridStyle" TargetType="Button" BasedOn="{StaticResource TextButtonStyle}">
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="Margin" Value="4,4,4,4" />
<Setter Property="FontFamily" Value="Arial"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="Foreground" Value="Red"/>
</Style>
</UserControl.Resources>

<StackPanel x:Name="LayoutRoot" Background="White">
<Button Content="Button" Style="{StaticResource TextButtonStyle}"/>
<Button HorizontalAlignment="Left" VerticalAlignment="Stretch" Width="75" Style="{StaticResource TextButtonInGridStyle}" Margin="4,0,0,0">
Button
</Button>
<Button HorizontalAlignment="Left" VerticalAlignment="Stretch" Width="75" Style="{StaticResource TextButtonInGridStyle}" Margin="4,0,0,0">
<Rectangle Fill="#FFF4F4F5" Height="10" Stroke="Black"/>
</Button>
</StackPanel>

您可以看到 Button 中没有 TextBlock,如果内容是矩形,它将很好地显示而不是文本。

关于contentpresenter - 是否可以在 Silverlight ContentPresenter 中嵌入文本格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1495622/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com