WPF Window size have monitor size

23,405

Solution 1

use this in code-behind:

a.WindowState = WindowState.Maximized;

and remove SizeToContent from your XAML.

With this code:

a.Width = System.Windows.SystemParameters.PrimaryScreenWidth;
a.Height = System.Windows.SystemParameters.PrimaryScreenHeight;

you will have problems when using secondary screen with different resolution.

Solution 2

above comment is working. i did below:- written in mainwindow.xaml.cs:-

public MainWindow()
        {
            this.WindowState = WindowState.Maximized;
            InitializeComponent();
        }
Share:
23,405
Ionică Bizău
Author by

Ionică Bizău

💻 Programmer ⚡️ Geek 🎹 Pianist & Organist 🚀 Learner 💡 Mentor 💫 Dreamer 🍏 Vegetarian 🙏 Jesus follower Website | GitHub | Twitter | PayPal Donations

Updated on July 21, 2022

Comments

  • Ionică Bizău
    Ionică Bizău almost 2 years

    I am new in WPF and I want to make a window that has max sizes (monitor sizes).

    The Window's XAML code is this:

    <Window x:Class="WpfApplication1.Stop"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="Stop" Height="{Binding}" Width="{Binding}" Background="Black" WindowStartupLocation="CenterScreen" WindowStyle="None" ResizeMode="NoResize" mc:Ignorable="d" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" d:DesignHeight="260" d:DesignWidth="348" SizeToContent="WidthAndHeight">
        <Grid>
            <Button Content="Ok" Height="25" HorizontalAlignment="Left" Margin="194,36,0,0" Name="button1" VerticalAlignment="Top" Width="38" Click="button1_Click" />
            <TextBlock Height="17" HorizontalAlignment="Left" Margin="18,16,0,0" Name="textBlock1" Text="Introduceti parola:" VerticalAlignment="Top" Width="246" FontSize="14" Foreground="White" />
            <PasswordBox Height="25" HorizontalAlignment="Left" Margin="12,36,0,0" Name="passwordBox1" VerticalAlignment="Top" Width="176" />
        </Grid>
    </Window>
    

    The C# code that open this window is this:

    Stop a = new Stop();                   
    a.Show();
    a.Width = System.Windows.SystemParameters.PrimaryScreenWidth;
    a.Height = System.Windows.SystemParameters.PrimaryScreenHeight;
    

    How can I set window size to monitor size?