调整 WPF 应用程序的大小,直到只剩下 window 栏
Resize WPF application until remain only the window bar
这是一种修改 window 高度直到仅保留 window 栏的方法吗?现在我用来将 window 的高度设置为 0 BUT 仍然保留 window 栏上方的一些内容(白色和灰色区域),我想要完全删除它并只留下 window 栏:
我使用 MVVM,所以需要绑定:
XAML:
Width="{Binding MainWindowWidthSize, Mode=TwoWay}"
Height="{Binding MainWindowHeightSize, Mode=TwoWay}"
C#
public void TriggerFloatingMode(object obj)
{
if (!_isFloatingModeEnabled)
{
MainWindowWidthSize = 500;
MainWindowHeightSize = 0;
_isFloatingModeEnabled = true;
}
else
{
MainWindowWidthSize = 1000;
MainWindowHeightSize = 560;
_isFloatingModeEnabled = false;
}
}
在Window标签中添加此代码WindowStyle="None"
并在Window标签底部输入以下代码
<Window.Resources>
<Style TargetType="{x:Type local:MainWindow}">
<Setter Property="WindowChrome.WindowChrome">
<Setter.Value>
<WindowChrome CornerRadius="0" GlassFrameThickness="0" ResizeBorderThickness="2" CaptionHeight="0"></WindowChrome>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
在上面的代码中,将 TargetType="{x:Type local:MainWindow}"
更改为您的 window local: your window name
的名称
使用您的代码的简单解决方案可能是
<Window x:Class="YourWindow.MainWindow"
SizeToContent="WidthAndHeight">
<Grid Height="{Binding MainWindowHeightSize }" Width="{Binding MainWindowWidthSize }">
</Grid>
</Window>
这是一种修改 window 高度直到仅保留 window 栏的方法吗?现在我用来将 window 的高度设置为 0 BUT 仍然保留 window 栏上方的一些内容(白色和灰色区域),我想要完全删除它并只留下 window 栏:
我使用 MVVM,所以需要绑定:
XAML:
Width="{Binding MainWindowWidthSize, Mode=TwoWay}"
Height="{Binding MainWindowHeightSize, Mode=TwoWay}"
C#
public void TriggerFloatingMode(object obj)
{
if (!_isFloatingModeEnabled)
{
MainWindowWidthSize = 500;
MainWindowHeightSize = 0;
_isFloatingModeEnabled = true;
}
else
{
MainWindowWidthSize = 1000;
MainWindowHeightSize = 560;
_isFloatingModeEnabled = false;
}
}
在Window标签中添加此代码WindowStyle="None"
并在Window标签底部输入以下代码
<Window.Resources>
<Style TargetType="{x:Type local:MainWindow}">
<Setter Property="WindowChrome.WindowChrome">
<Setter.Value>
<WindowChrome CornerRadius="0" GlassFrameThickness="0" ResizeBorderThickness="2" CaptionHeight="0"></WindowChrome>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
在上面的代码中,将 TargetType="{x:Type local:MainWindow}"
更改为您的 window local: your window name
使用您的代码的简单解决方案可能是
<Window x:Class="YourWindow.MainWindow"
SizeToContent="WidthAndHeight">
<Grid Height="{Binding MainWindowHeightSize }" Width="{Binding MainWindowWidthSize }">
</Grid>
</Window>