【发布时间】:2011-04-26 21:38:41
【问题描述】:
有没有办法将给定宽度的空白插入FlowDocument 作为Inline?这样我就可以根据需要“缩进”其他一些Inlines。
如果可以在行中的某个 x 偏移上放置一些内联,也可以解决问题。
注意:这样做的目的是解决this question 中描述的问题的部分问题。
【问题讨论】:
标签: .net wpf richtextbox inline flowdocument
有没有办法将给定宽度的空白插入FlowDocument 作为Inline?这样我就可以根据需要“缩进”其他一些Inlines。
如果可以在行中的某个 x 偏移上放置一些内联,也可以解决问题。
注意:这样做的目的是解决this question 中描述的问题的部分问题。
【问题讨论】:
标签: .net wpf richtextbox inline flowdocument
您可以使用容器类,例如:
<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>
【讨论】:
Blah blah blah的Run可以换行到下一行,在这种情况下,我将在那里有空的白行。第二个<InlineUIContainer> 不受TextBlock 支持(我仍然可以将它与FlowDocument 一起使用)。
Margin 属性,可惜 Inlines 没有这个属性。顺便说一句,创建评论时点击帮助按钮可以找到评论链接语法
Inline 来创建类似SpanWithMargin 类的东西吗?我需要能够影响Inlines 的布置方式。或者至少控制它们占用的空间。添加链接:我已经更正了链接,我不得不检查语法,之前从未提到过帮助链接。
我不确定这是否能解决您的问题,但如果您想“缩进”一个内联,也许您可以插入一个小的 Floater 或 Figure 大小来满足您的需要。确保 Floater 很短,这样它就不会超过一行。
我自己也在寻找比这更优雅的东西,但这同时对我有用。
【讨论】:
Figure 而不是Floater 它不能跨越到下一行,对吗?好吧,如果您发现有用的东西或有任何想法,请告诉我。你也会在这里找到我的进步。如果在类Span 中有类似属性MinimumXOffset 会很棒。或者,如果有办法对其进行子类化并实现此类属性。
Inlines 吗?或者我们只是不知道如何,因为它已记录在案?我在想创建我自己的Inline 是摆脱这个内联地狱的唯一出路......