2009-08-25 51 views
1

我有一個文本框與動態列的列:文本框在動態列不換行文本

<Grid.ColumnDefinitions> 
    <ColumnDefinition Width="*"/> 
    <ColumnDefinition Width="*"/> 
</Grid.ColumnDefinitions> 
<TextBox Grid.Column="1" TextWrapping="Wrap"/> 

文本框的寬度正好契合用戶的屏幕上。但是,當文本中的文本比其初始化寬度更長時,文本框將增加其寬度,以確保內部包裝文本的寬度。

我可以給文本框分配靜態寬度,但它很醜。有什麼辦法讓它的寬度初始化動態但在運行時是靜態的嗎?

+0

你能展示更多的XAML嗎? – AnthonyWJones 2009-08-25 08:38:37

+1

當前的XAML可以描述我的問題:如果TextBox沒有寬度,nad不會繼承它,TextWrapping不會工作。 – 2009-10-20 08:33:41

回答

0

您發佈的代碼迄今爲止看起來都很好。 Blend中的一個小測試可以確認文本包裝正如預期的那樣。

1

目前沒有辦法做到這一點。等待Silverlight 5使用Ancestor RelativeSource修復此問題。

0

所描述的結構只有在其中一個父母限制視覺元素的寬度時才起作用。這很可能不是這種情況,但我無法從問題中發佈的XAML中看到。

的原因缺乏上的控件的寬度範圍是最有可能在控制樹,所描述的是XAML的一部分一些水平的ScrollViewer。