Tôi đang sử dụng mẫu MVVM và tôi có thuộc tính kiểu chuỗi trong ModelView của mình.WPF TextBlock động đậm và nghiêng phần
Chuỗi có thể chứa các thẻ HTML sau:
<b>, </b>, <i>, </i>
tôi cần phải thực hiện một số phần của văn bản trong TextBlock được trong bình thường, in đậm hoặc in nghiêng.
Tại thời điểm tôi đã tạo ra cách giải quyết, một phương pháp helper mà làm việc như thế này:
Breaks chuỗi HTML thành các phần
Tạo thể hiện của Run lớp
Tùy thuộc vào thẻ, đặt thuộc tính FontWeight hoặc FontStyle
Thêm thể hiện của lớp Khởi động vào nội tuyến của TextBlock s bộ sưu tập
Giải pháp này hoạt động nhưng không tương thích với mẫu MVVM.
Tôi đã nghĩ đến việc sử dụng Trình chuyển đổi, nhưng tôi không chắc chắn nên sử dụng thuộc tính nào của TextBlock.
Bạn nghĩ sao, vấn đề này có thể được giải quyết như thế nào?
Sẽ thử ContentControl và BindableRun. Cảm ơn bạn! –
Giải pháp tuyệt vời! Vâng, ok, tôi muốn có thể liên kết với thuộc tính 'Inlines', nhưng trong trường hợp không hỗ trợ như vậy, đây là một lựa chọn thực sự tốt. Cũng cần lưu ý rằng thuộc tính 'Text' của' Run' bây giờ là thuộc tính phụ thuộc, vì vậy có thể bị ràng buộc mà không cần BindableRun. –