ボタンをクリックすると、CSV ファイルを読み込んで、',' を '\t' に置き換え、スタックパネルに書き出します。
private void Button_Click(object sender, RoutedEventArgs e)
{
for (int i = 0; i < r.variables.Count; i++)
{
_people.Add(new TextBlock() { Text = r.variables[i], HorizontalAlignment = System.Windows.HorizontalAlignment.Right });//.ToString() });
StackPanel stp = new StackPanel() { Orientation = Orientation.Vertical };
TextBlock tb = new TextBlock() {Text = r.variables[i]};
stp.Children.Add(tb);
_secondStack.Children.Add(stp);
}
foreach (StackPanel sp in _secondStack.Children)
{
foreach (TextBlock tb in sp.Children)
{
Size desiredSize = new Size();
tb.Measure(this.availableSize);
desiredSize = tb.DesiredSize;
}
}
}
ファイルから、他のものよりも長い文字列が含まれているものがあるため、ヘッダーの TextBlocks は下の TextBlocks よりも幅が広くなっています。
埋め込まれた StackPanel で最も広い TextBlock の幅を取得し、埋め込まれた StackPanel 内のすべての TextBlocks の幅をそれに設定するにはどうすればよいですか?