2017-02-08 6 views
1

Ich habe vor langer Zeit eine Frage gestellt und Hilfe bekommen. Die Anforderung hat sich leicht geändert.XAML: Wie mache ich einen Teil einer GroupBox Header fett, mit Bindung?

Original Frage: XAML: How do I make part of a GroupBox Header bold?

Die ursprüngliche Forderung war nur schwer Code, um den Kopftext zu:

Students (Max: 32)

Die Lösung, die Ed mir gab, war :

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

Jetzt muss ich beide s binden exionen einige Abhängigkeitseigenschaften, so dass der Kopf als eine davon erscheinen würde:

  • Students (Max: 32)
  • Studenten (Max: 64)
  • Mitarbeiter (Max : 32)
  • Mitarbeiter (Max: 64)
  • etc ...

muss ich diese beiden Span Abschnitte Bindung haben, so etwas wie dies:

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

, aber offensichtlich die {Binding ProfessionString} und {Binding MaxString} wird wörtlich angezeigt.

Gibt es eine Möglichkeit, das zu tun?

Danke.

+0

kann nur tun, [diese] (http: // Stackoverflow. com/questions/8365567/multiple-colors-im-textblock/11852742 # 11852742) –

+0

Nachdem ich beide Antworten verstanden hatte, stellte ich fest, dass diese der Antwort von mm8 ähnlich war. Ich danke Ihnen für das Teilen. – MrProgrammer

Antwort

2

Sie Run Elemente verwenden sollen und die Texteigenschaften zu Quelleigenschaften binden:

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

Es sieht einfach aus. Vielen Dank. – MrProgrammer

1

Wie etwa zwei Textblocks:

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

Danke. Es war wirklich schwer die bevorzugte Antwort auszuwählen. Dieser hilft mir, die Struktur besser zu visualisieren. – MrProgrammer

Verwandte Themen