禁用最小化按钮,但保持交叉和最大化按钮-WPF,C#

禁用最小化按钮,但保持交叉和最大化按钮-WPF,C#,c#,wpf,C#,Wpf,我想知道如何禁用最小化按钮,但保留最大化/恢复按钮和关闭按钮(红色“X”) 下面是我希望窗口右上角的按钮的图像: 我不认为WPF提供了一种只禁用最小化按钮的方法。您可以做的是禁用完整的标题栏并为自己创建自定义标题栏。退房。您可能需要在这里使用PInvoke。基本上,您正在导入SetWindowLong和GetWindowLong函数,并使用其句柄(hwnd)设置相应的标志以赢得API窗口 Blablaster基本上是正确的——您需要p/调用几个Windows API调用——但下面的TechNet

我想知道如何禁用最小化按钮,但保留最大化/恢复按钮和关闭按钮(红色“X”)

下面是我希望窗口右上角的按钮的图像:


我不认为WPF提供了一种只禁用最小化按钮的方法。您可以做的是禁用完整的标题栏并为自己创建自定义标题栏。退房。

您可能需要在这里使用PInvoke。基本上,您正在导入SetWindowLong和GetWindowLong函数,并使用其句柄(hwnd)设置相应的标志以赢得API窗口


Blablaster基本上是正确的——您需要p/调用几个Windows API调用——但下面的TechNet文章还介绍了您应该在何时/何地调用Windows API:

希望这有帮助。

以下是我的做法

Private Sub WindowAddChange_StateChanged(sender As Object, e As EventArgs) Handles Me.StateChanged

    If sender.windowstate = WindowState.Minimized Then
        Me.WindowState = WindowState.Normal
    End If

End Sub
Private Sub WindowAddChange_StateChanged(sender As Object, e As EventArgs) Handles Me.StateChanged

    If sender.windowstate = WindowState.Minimized Then
        Me.WindowState = WindowState.Normal
    End If

End Sub