在
WPF中,如何将常规UIElements与文本内联?例如,某个文本分类将使用包含特定选项的下拉列表替换文本范围.
我使用像Span,Bold,Hyperlink这样的对象来对文本内联进行一些轻微的修改,但我希望能够做更激烈的事情和自定义.我可以实现类似的Inline对象来实现这一目标吗?
我正在开展一个项目,我需要一些高级文本视觉效果.具体来说,我想做一些类似于基于Visual Studio 2010 WPF的源代码编辑器.
我将有一段文字和各种组件将查看该文本搜索具有特殊含义的作品.当它找到一段文本时,它将记录/标记该跨度.然后,另一组组件将遍历分类文本并根据其分类添加装饰.
你可以把它想象成WPF的智能标签.
我真的不知道从哪里开始,WPF中有关高级文本的所有文档都是关于动画,自定义画笔,转换为几何等等…
解决方法
看看
InlineUIContainer
和
BlockUIContainer
课程.它们允许UIElements嵌入流内容中,如FlowDocument或TextBlock.
以下是TextBlock中内联Button的示例:
<TextBlock> Some inline <InlineUIContainer> <Button Content="Hi" Click="Button_Click" /> </InlineUIContainer> inside the text. </TextBlock>