首页 > 解决方案 > WPF:将窗口大小调整为按钮大小

问题描述

我希望能够在单击该按钮时将整个窗口的大小调整为第一个按钮大小。并在下次单击时恢复其原始大小。我希望有这种功能的一些实现,但还没有找到。有人可以分享一个例子或描述如何很好地管理它的计划。

我认为我应该创建所有其他子控件并在单击按钮时将它们从网格中删除,以便能够将窗口大小缩小到仅第一个按钮。或者也许我可以移动第一个按钮下的所有控件并使它们不可见,以便只显示一个该按钮。非常感谢。

[窗口原型]
在此处输入图像描述

标签: wpfresizewpf-controlstoolbar

解决方案


嗯,在 WinForms 之后,我认为我的任务会有点困难,这对我有帮助:

window = new Window {
                                 SizeToContent = SizeToContent.WidthAndHeight,
                                 ResizeMode = ResizeMode.CanResizeWithGrip,
                                 Content = AromaPanelModel.Model.View,
                                 WindowStyle = WindowStyle.None,
                            };
        // in a User Control
        private void btnResize_Click(object sender, RoutedEventArgs e)
        {
            MainWindow.Width = _panelFolded ? _initialWidth : btnResize.Width + 12;
            _panelFolded = !_panelFolded;
            btnResize.Content = _panelFolded ? ">>" : "<<";
        }

推荐阅读