Solución:
He robado un código que encontré en los foros de MSDN e hice un método de extensión en la clase Window, como este:
internal static class WindowExtensions
{
// from winuser.h
private const int GWL_STYLE = -16,
WS_MAXIMIZEBOX = 0x10000,
WS_MINIMIZEBOX = 0x20000;
[DllImport("user32.dll")]
extern private static int GetWindowLong(IntPtr hwnd, int index);
[DllImport("user32.dll")]
extern private static int SetWindowLong(IntPtr hwnd, int index, int value);
internal static void HideMinimizeAndMaximizeButtons(this Window window)
{
IntPtr hwnd = new System.Windows.Interop.WindowInteropHelper(window).Handle;
var currentStyle = GetWindowLong(hwnd, GWL_STYLE);
SetWindowLong(hwnd, GWL_STYLE, (currentStyle & ~WS_MAXIMIZEBOX & ~WS_MINIMIZEBOX));
}
}
La única otra cosa que debe recordar es que, por alguna razón, esto no funciona desde el constructor de una ventana. Lo solucioné arrojando esto en el constructor:
this.SourceInitialized += (x, y) =>
{
this.HideMinimizeAndMaximizeButtons();
};
¡Espero que esto ayude!
Una forma es configurar su ResizeMode="NoResize"
. Se comportará así.
¡Espero que esto ayude!
No sé si esto funciona para su req. visualmente … Esto es
<Window x:Class="DataBinding.MyWindow" ...Title="MyWindow" Height="300" Width="300"
WindowStyle="ToolWindow" ResizeMode="CanResizeWithGrip">
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)