Changing Console Window's size throws ArgumentOutOfRangeException

邮差的信 提交于 2019-12-19 05:04:18

问题


I am trying to set the size of the Console Window in a c# console application. I get an ArgumentOutOfRangeException with this message:

The value must be less than the console's current maximum window size of 41 in that dimension. Note that this value depends on screen resolution and the console font.

I am using this to set it:

Console.WindowHeight = 480;

How do you set the Console window's size properly?


回答1:


From MSDN of Console.WindowHeight property:

The height of the console window measured in rows.

As you can see, these are not pixels. Just remember, these values can change depending on your screen resolution and the console font. You can find maximum height and width values with Console.LargestWindowWidth and Console.LargestWindowHeight properties.

Console.WriteLine(Console.LargestWindowHeight);
Console.WriteLine(Console.LargestWindowWidth);



回答2:


Console height is specified in rows (lines), not pixels.

http://msdn.microsoft.com/en-us/library/system.console.windowheight.aspx




回答3:


Microsoft recently published some information around this, see:

  1. Understanding Windows Console Host Settings

Try this in powershell:

$windowSize = $(get-item hkcu:\console).GetValue("WindowSize")
$windowHeight = $windowSize -shr 16
$windowWidth = ($windowSize -shl 16) -shr 16



回答4:


you can set a windowHeight less than 62, if u try exceed this value error throw the system.

class Pro
{
    public static void fun()
    {
        Console.WindowHeight = 61;
        Console.WriteLine("Welcome to asp .net ");
    }


    static void Main(string[] args)
    {
        Pro.fun();
    }

    // Summary:
    //     Gets the largest possible number of console window rows, based on the current
    //     font and screen resolution.
    //
    // Returns:
    //     The height of the largest possible console window measured in rows.
    public static int LargestWindowHeight { get; }

    // Summary:
    //     Gets the largest possible number of console window columns, based on the
    //     current font and screen resolution.
    //
    // Returns:
    //     The width of the largest possible console window measured in columns.
    public static int LargestWindowWidth { get; }

The above information catch Console[from metadata].



来源:https://stackoverflow.com/questions/15099523/changing-console-windows-size-throws-argumentoutofrangeexception

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!