我想在Silverlight中打开一个ChildWindow。内容是各种视图,它们托管在ChildWindow内的ContentControl中。
子窗口打开,它的大小是根据其内容。这是理想的行为。问题是,当内容调整大小时(例如Tab控件,网格 - 添加/删除列),子窗口也会调整大小。
有没有办法禁用childwindows自动调整大小?试图设置MaxWidth / MaxHeight和MinWidth / MinHeight。问题是我不知道如何计算内容的大小。
提前谢谢你:)
答案 0 :(得分:2)
将子窗口的内容包含在额外的网格控件中。使用网格的Loaded事件来获取窗口内容的计算大小并相应地约束窗口大小:
void ExtraGrid_Loaded(object sender, RoutedEventArgs e)
{
childWindow.Width = extraGrid.ActualWidth;
childWindow.Height = extraGrid.ActualHeight;
}