2016-01-13 58 views
1

我想在包裝文本的中間顯示一個帶有TextBox控件的簡短句子,用戶應輸入一個值。我不知道這是否是一個好主意:在TextBlock中對齊文本框

<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呢?

回答

5

我認爲這應該有所幫助。

<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> 
+0

完美,謝謝。 – ygoe