整个窗口上方的文字
本文关键字:文字 窗口 | 更新日期: 2023-09-27 18:05:25
我有一个c#应用程序与WPF。我希望在整个主窗口上方都有文字。它应该看起来像这样:
http://s2.postimg.org/uqad6sosp/Capture.png窗口应该保持交互,用户应该与应用程序一起工作。所以文字只是窗口上的水印。
有没有人知道我怎么能做到这一点与xaml?
在applicationWindow的顶部放置一个Label。然后设置IsHitTestVisible=False。这应该能奏效。当然,你可以开始使用Adorners,但现在可能太多了…
<Grid>
<Your Stuff here />
<TextBlock Text="My Watermark" IsHitTestVisible="False" FontSize="45pt" VerticalAlignment="Center" HorizontalAlignment="Center" DoSomeRotation... />
</Grid>
给你,
添加这样的资源,
<Window.Resources>
<Style x:Key="MyStyle" TargetType="{x:Type TextBox}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TextBox}">
<Grid>
<Border Background="White" BorderBrush="#FF7D8683" BorderThickness="1"/>
<ScrollViewer x:Name="scrollhost" Margin="5,0,0,0" VerticalAlignment="Center" />
<Label Margin="5,0,0,0" x:Name="lblwatermark" Content="{TemplateBinding Tag}" VerticalAlignment="Center"
Visibility="Collapsed" Foreground="Gray" FontFamily="Arial"/>
</Grid>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="Text" Value=""/>
</MultiTrigger.Conditions>
<Setter Property="Visibility" TargetName="lblwatermark" Value="Visible"/>
</MultiTrigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Foreground" Value="DimGray"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
XAML:
<Grid >
<TextBox Style="{StaticResource MyStyle}" Height="50" FontSize="43" Tag="OFFLINE">
<TextBox.LayoutTransform>
<RotateTransform Angle="-43" />
</TextBox.LayoutTransform>
</TextBox>
</Grid>