删除C#Flowdocument元素之间的空格?

aid*_*ner 2 c# wpf richtextbox flowdocument

我希望能够删除FlowDocument的各种内联元素之间的空白.下面是一个非常具体的例子,只是为了解决问题.所需的输出是"Hello World?" 但是会发生什么是"Hello World?".在这种情况下 "?" 是一个可点击的按钮.

我搜索了一段时间没有成功.我尝试了所有形式的打击垫/边距调整,但它们只能增加间距.我开始相信这个空间是FlowDocument元素边界所固有的.这似乎是一系列限制.

<RichTextBox>
  <FlowDocument>
    <Paragraph Margin="0">
      <Run>
        Hello World
      </Run>
      <InlineUIContainer>
        <Button Click="ButtonClick">?</Button>
      </InlineUIContainer>
    </Paragraph>
  </FlowDocument>
</RichTextBox>
Run Code Online (Sandbox Code Playgroud)

The*_*ker 5

与格式化看起来一样丑陋,在基于XML的XAML中,如果要避免运行之间的空白,则不能允许元素的close和open标记之间的任何空格.试试这个:

<RichTextBox>
  <FlowDocument>
    <Paragraph Margin="0">
      <Run>
         Hello World
       </Run><InlineUIContainer>
           <Button Margin="0" >?</Button>
       </InlineUIContainer>
    </Paragraph>
  </FlowDocument>
</RichTextBox>
Run Code Online (Sandbox Code Playgroud)