Exemplo n.º 1
0
        internal override Size GetPreferredSizeCore(Size proposedSize)
        {
            if (Appearance == Appearance.Button)
            {
                return(ButtonAdapter.GetPreferredSizeCore(proposedSize));
            }

            using (Graphics measurementGraphics = WindowsFormsUtils.CreateMeasurementGraphics()) {
                using (PaintEventArgs pe = new PaintEventArgs(measurementGraphics, new Rectangle())) {
                    LayoutOptions options = Layout(pe);
                    return(options.GetPreferredSizeCore(proposedSize));
                }
            }
        }
Exemplo n.º 2
0
        internal override Size GetPreferredSizeCore(Size proposedSize)
        {
            if (Appearance == Appearance.Button)
            {
                return(ButtonAdapter.GetPreferredSizeCore(proposedSize));
            }

            LayoutOptions options = default;

            using (var screen = GdiCache.GetScreenHdc())
                using (PaintEventArgs pe = new PaintEventArgs(screen, new Rectangle()))
                {
                    options = Layout(pe);
                }

            return(options.GetPreferredSizeCore(proposedSize));
        }