gpt4 book ai didi

wpf - 使用带有 WPF 标签的 System.Drawing.Font

转载 作者:行者123 更新时间:2023-12-04 14:21:28 24 4
gpt4 key购买 nike

我有一个 WPF Label 控件,我正在尝试更改使用由某些遗留代码提供的 System.Drawing.Font 对象的外观。我已经能够设置大部分属性,但是我在使用 Strikeout 和 Underline 时遇到了困难。

到目前为止,我有:

System.Drawing.Font font = FontFromLegacyCode();

System.Windows.Controls.Label label = new System.Windows.Controls.Label();
label.FontFamily = new System.Windows.Media.FontFamily( font.Name );
label.FontWeight = font.Bold ? System.Windows.FontWeights.Bold : System.Windows.FontWeights.Regular;
label.FontStyle = font.Italic ? System.Windows.FontStyles.Italic : System.Windows.FontStyles.Normal;
label.FontSize = font.Size;

你如何设置字体删除或下划线属性?有没有更好的控件可以使用?

最佳答案

我会将其更改为 TextBlock 控件。 TextBlock 控件具有您可以使用的 TextDecorations 属性。

<TextBlock Name="textBlock" TextDecorations="Underline, Strikethrough" />

或者,如果您真的喜欢,您可以将 TextBlock 粘贴到 Label 中(尽管我只使用 TextBlock 本身)。
<Label Name="label">
<TextBlock Name="textBlock" TextDecorations="Underline, Strikethrough" />
</Label>

看看 TextDecorations类(class)。

我发现在大多数情况下 TextBlocks 比 Labels 更合适。这是一个 blog post关于差异。主要区别在于 Label 是一个控件,而 TextBlock 只是一个 FrameworkElement。标签也支持访问 key 。

关于wpf - 使用带有 WPF 标签的 System.Drawing.Font,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/637636/

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