Я использую C++ (и делали так в течение почти 25 лет), потому что это - лучший системный язык программирования вокруг. Я сказал бы, что не распознаю ни одной из так называемых "бородавок", которые Вы описываете - это - функции!
Для программирования бессистемностей, я использую другие языки, такие как PHP, Delphi, колочу сценарии, awk, жемчуг и Smalltalk. Один размер не соответствует всем, если Вы не некоторый фанатик языка, конечно.
Если вы используете WPF 4.0, вы также можете сделать это:
<TextBlock>
<Run Text="{Binding SomeLabel}"/>
<Run Text=":"/>
</TextBlock>
Это на самом деле объединяет две строки из двух тегов Run
и копирует их в свойство TextBlock.Text
!
Используя этот подход, вы можете даже привязать к различным свойствам в презентере и отобразить его в одном TexBlock
. Посмотрите этот превосходный пример:
Попробуйте свойство Binding StringFormat - оно может делать очень просто то, что вы хотите.
Если вы используете метку внутри индикатора выполнения, вы можете использовать этот способ:
<Label x:Name="Progress" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" FontWeight="Bold" Foreground="White" Opacity=".7"
Content="{Binding Path=Value, RelativeSource={RelativeSource TemplatedParent}}" ContentStringFormat="{}{0}%">
таким образом вы можете визуализировать значение индикатора выполнения с добавленным%.