В этом вопросе говорится все. Я не могу понять это. Я попытался добавить зеркальный текстовый элемент, но у меня есть триггер, который изменяет шрифт, когда мышь находится над элементом, который не запускается из-за того, что главный элемент находится сверху. Обычные обходные пути для размытия не работают, когда это сам текст, который вы хотите удалить.Как добавить не-размытие тени на текстовый блок
Я думаю о взломе этого и добавлении двух теневых блоков, которые отображают видимость. Но я не уверен, как переключить эту видимость, поскольку я не могу использовать TargetName
или DataTrigger
, поскольку он основывается на другом элементе, поэтому он никогда не будет запускаться.
Per Request (Shadow преувеличена, так что можно увидеть) :
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:models="clr-namespace:DesktopDictation.Spelling.Models">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="../FontStyles/TextBlock.DefaultFont.xaml"/>
</ResourceDictionary.MergedDictionaries>
<DropShadowEffect x:Key="BlackShadow" ShadowDepth="10" Direction="270" Color="Black" Opacity="75" BlurRadius="2"/>
<Style x:Key="Spelling.TextGlyph" TargetType="TextBlock" BasedOn="{StaticResource TextBlock.DefaultFontFamilyStyle}">
<Setter Property="FontWeight" Value="Normal"/>
<Setter Property="FontSize" Value="12"/>
<Setter Property="Foreground" Value="#FFFFFF"/>
<!--<Setter Property="Effect" Value="{StaticResource BlackShadow}"/>-->
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="#75BAFF"/>
<Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="FontSize" Value="22"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="GlyphList" TargetType="ItemsControl">
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
<Setter Property="ItemTemplate">
<Setter.Value>
<DataTemplate DataType="models:SpellingGlyph">
<Grid Name="MainGrid">
<TextBlock Text="{Binding Text}" VerticalAlignment="Bottom" Effect="{StaticResource BlackShadow}" Margin="0,0,5,0"/>
<TextBlock Text="{Binding Text}" ToolTip="{Binding Pronunciations}" Style="{StaticResource Spelling.TextGlyph}" VerticalAlignment="Bottom" Margin="0,0,5,0"/>
</Grid>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
Опубликовать Ваше текущее XAML и скриншот того, что вы в настоящее время против того, что вы ожидаете. –
@HighCore Добавлено. –