2012-01-25 79 views
13

WPFのウィンドウをいくつか表示し、下部に余分なパネルを表示しなければならない時が来たとしましょう。WPFウィンドウのサイズを動的に変更する方法は?

私がしたいことは、WPFウィンドウサイズを大きくして再度中央に置くことです。

ヒントやサンプルはありますか?

+0

ウィンドウが最大化されるとどうなりますか? – Kugel

+0

実際には最大化されていません。新しいパネルが下部に表示されるため、高さによって変更する必要があります。 –

答えて

39

ウィンドウのサイズと場所をプログラムで変更することができます。サイズの適切な幅と高さの値と、場所の上と左の値を適切に設定するだけです。しかし、それはさらに簡単です。

this pageあなたは

<Window x:Class="SizingTest.Window1" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Title="Window1" 
     Width="Auto" Height="Auto" SizeToContent="WidthAndHeight"> 

が自動的にコンテンツにウィンドウサイズを適応させるために取得し、サイズが変更された後 help of this linkで再度ウィンドウを中央にすることができます。

+0

ありがとう!私が必要とする最終的な設定は次のとおりです:幅= "721"高さ= "自動" SizeToContent = "高さ" –

4

あなたは次の操作を行うことができ、特定のサイズにサイズを変更したい場合:あなたは、メインウィンドウには、単に次のコードを記述サイズを変更したい場合は

Application.Current.MainWindow.Height = 420; 

あなただけの新しいウィンドウのは.csファイルに次のコードを記述し、メインウィンドウ以外の新しいウィンドウのサイズを変更したい場合。

Application.Current.MainWindow = this; 
Application.Current.MainWindow.Width = 420; 

希望します。

関連する問題