2012-04-19 102 views
0

我有一個窗口具有動態寬度和高度以及用戶控件作爲內容。動態大小的窗口在加載後保持其當前大小

基於我的視圖模型中的幾個條件,我的用戶控件的幾個控件是可見的或不可見的。

使用SizeToContent.WidthAndHeight很好WPF使我的窗口顯示完美的正確尺寸,以適應根據我的用戶控件的Loaded事件期間生效的綁定必須可見的所有內容。

我的問題是,我有一個TextBox沒有定義的寬度,如果用戶輸入太多的字符,它會迫使我的窗口的寬度增長,我不希望這樣!

有沒有辦法避免這種情況,而不寫入大量的代碼,並且不失去功能,如果用戶調整窗口大小,那裏的所有內容都會自動更改以適應新的大小?

我想要的是每個控件(或窗口本身)都將保持其當前大小,並且不會超出當前窗口的範圍。

我希望我明確了我的問題,並提前致謝!

回答

0

我想你正在尋找TextBox的MaxWidth屬性,嘗試將它綁定到Textbox-es父控件Width,然後如果你輸入一個更長的文本,那麼它不應該變大。

+0

謝謝你的回答。我不能這樣做,因爲TextBox的寬度不等於其父項的寬度。它之前有一個TextBlock。 – Dummy01 2012-04-19 11:41:15

+0

如果你想綁定它的控件ActualWidht? – BigL 2012-04-19 12:11:04

+0

只要窗口的SizeToContent設置爲WindowAndHeight,TextBox就會繼續增長。我會稍後發佈一個答案,我如何部分解決它,但我正在尋找一個更優雅的答案......無論如何 – Dummy01 2012-04-19 12:22:33