.net 在FlowDocument中插入任意宽度的空白
是否有方法将给定宽度的空白插入到.net 在FlowDocument中插入任意宽度的空白,.net,wpf,richtextbox,inline,flowdocument,.net,Wpf,Richtextbox,Inline,Flowdocument,是否有方法将给定宽度的空白插入到FlowDocument作为Inline?这样我就可以根据需要“缩进”一些其他的内联s 如果可以在直线的某个x偏移上放置一些内联,也可以解决问题 注意:这样做的目的是解决中所述问题的部分问题。我不确定这是否能解决您的问题,但如果您想“缩进”内联,也许您可以插入一个小的浮动框或大小符合您需要的图形。确保浮子较短,因此其跨度不会超过一条线 我自己也在寻找比这更优雅的东西,但这同时也在为我工作。您可以使用容器类,例如: <RichTextBox> &
FlowDocument
作为Inline
?这样我就可以根据需要“缩进”一些其他的内联s
如果可以在直线的某个x偏移上放置一些内联,也可以解决问题
注意:这样做的目的是解决中所述问题的部分问题。我不确定这是否能解决您的问题,但如果您想“缩进”内联,也许您可以插入一个小的浮动框或大小符合您需要的图形。确保浮子较短,因此其跨度不会超过一条线
我自己也在寻找比这更优雅的东西,但这同时也在为我工作。您可以使用容器类,例如:
<RichTextBox>
<FlowDocument>
<Paragraph>
<InlineUIContainer>
<FrameworkElement Width="200"/>
</InlineUIContainer>
<Run x:Name="RunChan" Text="Indented Text"/>
</Paragraph>
</FlowDocument>
</RichTextBox>
不过,我并不真的推荐它
在文本块中:
<TextBlock>
<InlineUIContainer>
<FrameworkElement Width="200"/>
</InlineUIContainer>
<Run x:Name="RunChan" Text="Indented Text"/>
</TextBlock>
这是一个选项,但不是很明确。。。而且还没有明确的解决办法。如果我使用图
而不是浮动框
,它不能跨越到下一行,对吗?如果你发现有用的东西或者有什么想法,请告诉我。你也可以在这里找到我的进步。如果类Span
中有类似属性MinimumXOffset
的东西,那就太好了。或者,如果有一种方法可以对它进行子类化并实现这样的属性。Will do-我的一个大愿望是让Microsoft对FlowDocument元素的格式进行形式化和表面化,这样我们就可以像创建自定义框架元素那样实现我们自己的内联和块。所以我们现在不能实现我们自己的内联s了?或者我们只是不知道怎么做,因为它是有文件记录的?我认为创建自己的内联是摆脱内联地狱的唯一途径…不确定,但我认为呈现行为特定于一组FlowDocument类。换句话说,FlowDocument的呈现器似乎解释了如何使用自己的代码呈现元素,而不是将其延迟到元素内部的代码。如果在某些元素上使用Reflector,则它们在实际格式中不包含任何内容。这里有两个问题:首先,包含文本的运行会被包装到下一行,在这种情况下,我会在那里有一条空白的白线。第二个
不受TextBlock
的支持(我仍然可以将其与FlowDocument
一起使用)。我的textblocks支持它(将其添加到答案中)H.B.:那么我错了。。。你为什么不推荐呢?我知道不清楚,但你有什么特别的原因吗?你能在上下文中找到一个更好的解决办法吗?(空白空间意味着缩进和弦,以便它们出现在正确的歌词字符上)?我不喜欢它,因为我认为插入一个哑控件进行间距是有点麻烦的。如果有块可供使用,可以使用它们的Margin
属性,但糟糕的是内联线没有这个属性。顺便说一下,在创建注释时,单击帮助按钮可以找到注释链接语法h.B.:我想知道为什么它们没有边距属性?您认为我可以将Inline
子类化以创建类似SpanWithMargin
类的内容吗?我需要能够影响Inline
s的布局方式。或者至少控制它们占用的空间。添加链接:我已经更正了链接,我不得不目瞪口呆寻找语法,以前从未提到过帮助链接。