Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF中的句柄字体_C#_Wpf_Fonts - Fatal编程技术网

C# WPF中的句柄字体

C# WPF中的句柄字体,c#,wpf,fonts,C#,Wpf,Fonts,以下是我的背景: 我们正在使用WPF为我们的产品创建一个新的Windows用户界面。由于我们是跨平台的,所以在应用程序的另一部分(用C编写)中已知Label.Content或Button.Content等所有信息,而不是在XAML中定义的 问题是: 我们希望处理放入WPF组件内容中的字符串。 我看到我们有一些属性 Label.Content.FontFamily或Label.Content.Size,但并非所有字符串的图形属性都必须相同 例如: 这是我的标签内容:“大家好,谢谢你们帮助我”。有可

以下是我的背景: 我们正在使用WPF为我们的产品创建一个新的Windows用户界面。由于我们是跨平台的,所以在应用程序的另一部分(用C编写)中已知
Label.Content
Button.Content
等所有信息,而不是在XAML中定义的

问题是: 我们希望处理放入WPF组件内容中的字符串。 我看到我们有一些属性
Label.Content.FontFamily
Label.Content.Size
,但并非所有字符串的图形属性都必须相同

例如: 这是我的标签内容:“大家好,谢谢你们帮助我”。有可能吗

  • 在“谢谢”下面划线
  • 将所有大写字母更改为红色
  • 更改这些大写字母的大小
实际上,我们正在使用WinFrom来实现这一点,但现在是时候更新GUI了,因为Winforms现在很难看


非常感谢

TextBlock的内容属性(Text)需要一组
Inline
元素(InlineUICollection),您可以使用以下内容:

       Inline
          InlineUICollection
          LineBreak
          Run (defines Text property)
          Span (defines Inlines property)
            Bold
            Italic
            Underline
(Inlines是span的内容属性,是InlineUICollection,这意味着您可以在span内添加梯段、换行符和其他span/Bold/斜体。)

使用此选项可以“大家好,谢谢你们帮助我”:


如果存在更改显示样式的某些条件,则可以使用。检查哪些描述了使用。在xaml中尝试此操作。。。。。。。。。。。。。。。。不幸的是,在我的例子中,更改XAML il可能不是一个好的解决方案。当我在收到之前不知道如何“设计”字符串时。我知道,这在WPF的理念中并不真实,但我们的API结构似乎不可能。您好,谢谢您的回复。看来是我在找的。但是我想对按钮或列表框不可能做同样的事情?是的,你可以。按钮是ContentControl,因此您可以自定义它在ContentTemplate中的外观。如果您对默认外观满意,您只需添加一个文本块作为按钮的内容,它就会显示出来,即:
ello各位,谢谢您的帮助。对于ItemControls(例如ListBox),您必须查看DataTemplates的使用方式,它们允许您定义每个项的呈现方式
<TextBlock><Run Text="H" FontSize="20" Foreground="Red"/><Span>ello guys, <Underline>thank you</Underline> for helping me</Span></TextBlock>
        TextBlock t = new TextBlock();
        t.Inlines.Add(new Run{Text="Hello World"});