在TextBlock中对齐TextBox

3

我想在自动换行的文本中间使用TextBox控件显示一个短语,用户可以在其中输入值。我不确定这是否是一个好主意:

<TextBlock TextWrapping="Wrap">
    <Run Text="Keep at least"/>
    <TextBox Width="30" Margin="4,0"/>
    <Run Text="MB free on the drive"/>
</TextBlock>

但它可以包含输入字段和文本。不幸的是,TextBox 与文本基线对齐,而不是居中。这意味着输入框内的文本与周围的标签高度不同。明显的垂直对齐属性对我没有帮助。
有没有解决方法或完全不同的方法?
HTML 可以很好地完成这项工作,WPF 呢?
1个回答

8
我想这应该会有所帮助。
<TextBlock TextWrapping="Wrap">
    <Run Text="Keep at least"/>
    <InlineUIContainer BaselineAlignment="Center">
        <TextBox Width="30" Margin="4,0"/>
    </InlineUIContainer>
    <Run Text="MB free on the drive"/>
</TextBlock>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接