我想为TextBox控件的文本的某些部分(从开始和结束的绝对char位置)更改背景颜色。
(从用户选择的开始和结束位置开始,或者从预加载的开始和结束位置绝对字符位置开始)
这可能吗?
注意我不想使用RichTextBox或任何Flow Document。
答案 0 :(得分:0)
除非选择文本足够,否则不能直接通过文本框进行选择。 我建议您仔细考虑选择文本范围是否足够。 您可以根据来回的字符进行操作,并且可以覆盖系统笔刷,使其成为所需的任何颜色。
如果那还不够的话。
您需要在文本框下添加一些其他控件,以使其看起来像是文本框更改的背景。 一种方法是使用您将itemscontrol模板化为文本块并为其背景着色的颜色。
您将其放在文本框下,这样可以透彻显示背景。最好将文本设置为与背景相同的颜色,这样,小的偏移量就不会造成问题。
或者,您可以使用lineargradientbrush并计算字符在哪里。但是,这将非常棘手。