C# 如何使WPF TextBlock文本的一部分变为粗体,而不使用另一个TextBlock和属性设置器
我有下面的TexBlock,我应该根据在WPF组合框上选择的值动态更改它的文本属性C# 如何使WPF TextBlock文本的一部分变为粗体,而不使用另一个TextBlock和属性设置器,c#,wpf,.net-3.5,textblock,C#,Wpf,.net 3.5,Textblock,我有下面的TexBlock,我应该根据在WPF组合框上选择的值动态更改它的文本属性 <TextBlock Padding="5 10 0 0"> <TextBlock.Style> <Style TargetType="{x:Type TextBlock}"> <Setter Property="Text" Value="Select the items:" /> <Styl
<TextBlock Padding="5 10 0 0">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Text" Value="Select the items:" />
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=MyWPFCombo, Path=Id}" Value="10">
<Setter Property="Text" Value="Select the old items:" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
我的问题是,我需要将部分文本“选择旧项目:”设置为粗体,仅将部分文本“旧项目”设置为粗体。在其他情况下,我知道可以通过在文本块中填充文本块来完成。在这种情况下,我需要使用setter来设置文本块。怎么做?这很复杂,因为你需要文本块的一部分加粗,我认为你不能折叠内联
<StackPanel>
<TextBlock Padding="5 10 0 0">
<Run Text="Select the"/>
<Bold>
<Run>
<Run.Style>
<Style TargetType="Run">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=MyWPFCombo, Path=SelectedValue}" Value="10">
<Setter Property="Text" Value="old items:" />
</DataTrigger>
</Style.Triggers>
</Style>
</Run.Style>
</Run>
</Bold>
<Run>
<Run.Style>
<Style TargetType="Run">
<Setter Property="Text" Value="items:" />
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=MyWPFCombo, Path=SelectedValue}" Value="10">
<Setter Property="Text" Value="" />
</DataTrigger>
</Style.Triggers>
</Style>
</Run.Style>
</Run>
</TextBlock>
<ComboBox x:Name="MyWPFCombo"
SelectedValuePath="Id"
DisplayMemberPath="Description"
ItemsSource="{Binding Items}"/>
</StackPanel>
好的,我会试试,但是没有办法使用html字符,比如。。。在字符串中也可以这样做?xaml不是html-我认为在字符串中没有任何特殊字符可以切换为粗体。