Używam wzorca MVVM i mam właściwość typu ciąg w moim ModelView.WPF TextBlock dynamiczne pogrubienie i kursywa części
Łańcuch może zawierać następujące znaczniki HTML:
<b>, </b>, <i>, </i>
muszę dokonać pewnych części tekstu w TextBlock być w normalnym, pogrubienie lub kursywa.
Na chwilę Stworzyłem obejścia metody pomocnika, który działa tak:
przerw ciąg HTML na części
Tworzy instancję klasy Run
zależności od znacznika ustawia właściwości FontWeight lub FontStyle
Dodaje instancję klasy Run do wbudowanego TextBlocka s kolekcja
To rozwiązanie działa, ale nie jest kompatybilne ze wzorcem MVVM.
Myślałem o użyciu Konwertery, ale nie jestem pewien, do której właściwości TextBlock powinienem się zobowiązać.
Co myślisz, w jaki sposób można rozwiązać ten problem?
Spróbuję ContentControl i BindableRun. Dziękuję Ci! –
Świetne rozwiązanie! Cóż, ok, wolałbym móc powiązać własność 'Inlines', ale przy braku takiego wsparcia jest to naprawdę dobra alternatywa. Warto również zauważyć, że własność 'Text'' Run' jest teraz właściwością zależności, więc można ją powiązać bez potrzeby BindableRun. –