0

我在换行面板中有 2 个文本块。其中一个文本框绑定到我的视图模型,另一个包含静态文本“:”。我想要的行为是,如果第一个文本框内容增长超过特定宽度,它将文本换行到下一行。这可以通过 TextWrapping=wrap 实现。但我想要的是,当文本块增长时,它将下一个文本块也随之推到第二行。

例如,如果 TextblockOne 有文本 1111111222222222 和 textblock2 有文本:那么我应该得到类似

111111

222222:

而不是

1111111:

2222222

以下是我的代码:

<Grid >

            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="100"/>
                <ColumnDefinition/>
                <ColumnDefinition/>
            </Grid.ColumnDefinitions>

            <Grid.RowDefinitions>
                <RowDefinition/>
                <RowDefinition/>
                <RowDefinition/>
            </Grid.RowDefinitions>

            <WrapPanel Orientation="Horizontal" Grid.Column="0">

                <TextBlock Text="11111111111111111111112222222222222222222222222222" TextWrapping="WrapWithOverflow" />       
                <TextBlock Text=":"/>
            </WrapPanel>
</Grid>

注意:我不能将 : 附加到 viewmodel 属性。你能帮忙吗?

4

1 回答 1

1

不确定这是否正是您想要的,但试试看:

<WrapPanel Orientation="Horizontal" Grid.Column="0">
    <TextBlock  TextWrapping="Wrap">
        <Run Text="11111111111111111111112222222222222222222222222222"/>
        <Run Text=":"/>
    </TextBlock>
</WrapPanel>

这将输出:

111111
222222:
于 2013-01-17T18:27:58.323 回答