如何对水平对齐的多个控件的内容进行文本换行,使其看起来像一个字符串
本文关键字:看起来 字符串 一个 换行 对齐 水平 控件 文本 | 更新日期: 2023-09-27 18:22:07
我有三个水平对齐的控件,一个ListPicker,一个Textblock和一个ListPixer。
内容看起来像
美利坚合众国诉英国
美利坚合众国-第一个ListPicker的内容(根据所选项目更改值)
v/s-文本块内容
英国-第二个ListPicker的内容(根据所选项目更改值)
我需要用文本包装整个字符串"美利坚合众国诉英国",就好像它是单个控件的内容一样。
这可能吗?请帮忙。
您可以尝试将RichTextBox与InlineUIContainers:一起使用
<RichTextBox>
<Paragraph>
<InlineUIContainer>
<ListBox>
<ListBoxItem>United states of America</ListBoxItem>
<ListBoxItem>United states of America</ListBoxItem>
</ListBox>
</InlineUIContainer>
<Run Text="vs" />
<InlineUIContainer>
<ListBox>
<ListBoxItem>United Kingdom</ListBoxItem>
<ListBoxItem>United Kingdom</ListBoxItem>
</ListBox>
</InlineUIContainer>
</Paragraph>
</RichTextBox>
但这仍然无法将文本包装在InlineUIContainer中。它将仅包裹相对于彼此的零件。
如果你想能够包装内部文本,你需要改变你的方法。我能想到的唯一解决方案是使用超链接:
<RichTextBox>
<Paragraph>
<Hyperlink Click="Hyperlink1_Click">United states of America</Hyperlink>
<Run Text=" vs " />
<Hyperlink Click="Hyperlink2_Click">United states of America</Hyperlink>
</Paragraph>
</RichTextBox>
和处理超链接。单击事件,而不是导航,以显示要拾取的项目列表,然后更改超链接的文本以反映新选择的项目。您可能还想尝试重新设计超链接的样式
您可以使用堆叠面板,如下所示:
<StackPanel Orientation="Horizontal" >
<toolkit:ListPicker VerticalAlignment="Center" Width="100"/>
<TextBlock Text="vs" VerticalAlignment="Center" TextAlignment="Center"/>
<toolkit:ListPicker VerticalAlignment="Center" Width="100" />
</StackPanel>
注意:"宽度"取决于您