是否有一个我可以在WPF中使用的面板将“击败”SizeToContent?

时间:2010-07-03 22:21:30

标签: c# wpf window panel sizetocontent

我基本上希望窗口的某些部分不会影响SizeToContent(像标题栏这样的东西),因此它看起来没有大小和折叠。是否有一个我可以用来做这个的面板(比如ScrollViewer?)或者我必须自己编写吗?

1 个答案:

答案 0 :(得分:2)

您需要一个从MeasureOverride返回(0,0)的控件。 Canvas会执行此操作,但可能没有您想要的其他行为。您也可以将现有面板(如Grid)子类化,然后返回一个空的大小:

public class ZeroGrid
    : Grid
{
    protected override Size MeasureOverride(Size constraint)
    {
        base.MeasureOverride(constraint);
        return new Size();
    }
}

它的行为类似于Grid,因此其内容将延伸到其实际大小,但它的DesiredSize始终为零,因此它不会影响SizeToContent。