前提・実現したいこと
WPF・MVVMの設計にてソフトを作っています。
StackPanel のエリアサイズを動的に取得したいと試みていますが・・・なかなか取得できません。最初は固定値で入れておいても良いのでしょうか。。
考え方としては、Bindingにて取得する場合、最初に固定値を入れておき、その後、Windowが拡大されたときなど・・サイズ変更によって、その際に取得するようにするにはどうしたら良いのでしょうか?
よろしくお願い致します。
該当のソースコード
xaml
1 <Grid> 2 <StackPanel Width="{Binding SWidth}" Height="{Binding SHeight}"> 3 4 </StackPanel> 5 </Grid>
ViewModel側
C#
1 2using System.Windows; 3 4 5 double SWidth { get; set; } 6 double SHeight { get; set; } 7 8 public void Initialize() 9 { 10 var StackWidth = SizeToContent.Width; 11 var StackHeight = SizeToContent.Height; 12 13 SWidth = (double)StackWidth; 14 SHeight = (double)StackHeight; 15 16 }
試したこと
1)固定値を入れると、サイズは反映される。
2)SizeToContentを取得してみた。
補足情報(FW/ツールのバージョンなど)
開発環境:Visual Studio2015

回答3件
あなたの回答
tips
プレビュー