在图像周围包装文本或在C#WPF中链接两个TextBlock

And*_*rew 3 c# wpf word-wrap

我正在创建一个程序,在同一窗口中显示文本和图像.图像位于屏幕的左上角,文本将从其右侧开始,然后在图像下方继续向下.

目前,我正在尝试的是采取两个TextBlocks(图像右侧一个,图像和第一个文本块下面一个),并希望文本从一个块继续到另一个块.这是一种理想的方法,如果是这样,我该怎么做?有没有比这更好/更简单的方法,或者我可以只使用一个对象吗?谢谢,

安德鲁

C8H*_*4O2 21

我不建议使用TextBlocks来实现这种类型的布局.正如Kieren所说,FlowDocument对于这种类型的设计是理想的.看一看本XAML片段,并使用带有的FlowDocument段落元素和包含图像的浮子元件所得到的WPF应用程序的屏幕截图:

<Grid>
    <FlowDocumentScrollViewer>
        <FlowDocument>                
            <Paragraph>
                <Floater Width="130" HorizontalAlignment="Left" Margin="0,0,5,5" Padding="3">
                    <BlockUIContainer>
                        <Image Source="/FlowDocumentTest;component/dog.png" Width="100" /> 
                    </BlockUIContainer>
                </Floater>
                Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
                Suspendisse et diam felis. Vestibulum ac nisl mi. 
                Etiam varius velit lobortis nibh vestibulum nec consequat velit pellentesque. 
                Cras commodo libero placerat nulla dapibus eget porttitor ligula tempor. 
                Donec nisl massa, congue et pretium sit amet, feugiat vel est. 
                Nulla dapibus metus in justo pulvinar sit amet viverra lorem rhoncus. 
                Integer placerat interdum massa et mattis.</Paragraph>
        </FlowDocument>
    </FlowDocumentScrollViewer>
</Grid>
Run Code Online (Sandbox Code Playgroud)

替代文字

  • FlowDocuments 对数据绑定的支持有限,动态生成的内容可能会出现问题。 (3认同)