2017-02-08 30 views
1

我问一个问题,不久前得到了帮助就可以了。这一要求稍有改变。XAML:我如何使GroupBox标题的一部分变为粗体,并进行绑定?

原题: XAML: How do I make part of a GroupBox Header bold?

原来的要求是标题文本只是硬编码到:

学生(最大:32)

埃德给我的是解决方案:

<GroupBox.Header> 
    <TextBlock> 
     <Span FontWeight="Bold">Students</Span> 
     <Span>(Max: 32)</Span> 
    </TextBlock> 
</GroupBox.Header> 

现在我需要绑定这两个s ections一些依赖属性,使得所述头部将显示为这些中的一个:

  • 学生(最大值:32)
  • 学生(最大值:64)
  • 雇员(最大:32)
  • 雇员(最大值:64)
  • 等...

我需要结合这两个跨度部分,这一个类似于:

<GroupBox.Header> 
    <TextBlock> 
     <Span FontWeight="Bold">{Binding ProfessionString}</Span> 
     <Span>{Binding MaxString}</Span> 
    </TextBlock> 
</GroupBox.Header> 

,但显然{结合ProfessionString}和{绑定MaxString}将会一字不差地显示出来。

有没有办法做到这一点?

谢谢。

+0

可能只是做[这](HTTP://计算器。 COM /问题/ 8365567 /多颜色功能于文字块/ 11852742#11852742) –

+0

一旦我明白了两个答案,我意识到,这是一个类似于MM8的答案。感谢你的分享。 – MrProgrammer

回答

2

您应该使用Run元素,把他们的Text属性到源属性:

<GroupBox.Header> 
    <TextBlock> 
     <Run FontWeight="Bold" Text="{Binding ProfessionString, Mode=OneWay}" /> 
     <Run Text="{Binding MaxString, Mode=OneWay}" /> 
    </TextBlock> 
</GroupBox.Header> 
+0

使它看起来很容易。非常感谢你。 – MrProgrammer

1

如何约两的TextBlocks:

<GroupBox.Header> 
    <StackPanel Orientation="Horizontal"> 
     <TextBlock FontWeight="Bold" Text="{Binding ProfessionString}"/> 
     <TextBlock Text="{Binding MaxString}"/> 
    </StackPanel> 
</GroupBox.Header> 
+0

谢谢。选择首选答案非常困难。这个帮助我更好地观察结构。 – MrProgrammer

相关问题