调整控制台窗口大小时水平滚动条消失-C#

问题描述 投票:0回答:1

我有一个简单的控制台应用程序,调整大小后,水平滚动条消失,但垂直滚动条保持不变。有没有办法解决此问题。我在Main(string [] args)方法中使用以下控制台设置。

if (Environment.UserInteractive)
{
    // Console dimensions 
    Console.SetWindowSize(80, 20);
    Console.BufferHeight = Int16.MaxValue - 1;

    var service = new WindowsService();
    service.ManualStartAndStop(args);
}
else
{
    ServiceBase[] ServicesToRun;
    ServicesToRun = new ServiceBase[]
    {
    new WindowsService()
    {
        ServiceName = "TestService"
    }
    };
    ServiceBase.Run(ServicesToRun);
}


// WindowsService class method
internal void ManualStartAndStop(string[] args)
{
   this.OnStart(args);
   Console.ReadLine();
   this.OnStop();
}
c# .net
1个回答
0
投票

如果不需要滚动条,请将缓冲区的宽度和高度设置为与窗口大小相同。如果需要滚动条,请将缓冲区的宽度和高度设置为大于窗口大小。如果缓冲区比窗口宽,您将获得一个水平滚动条。如果缓冲区比窗口高,您将获得一个垂直滚动条。如果用户将窗口调整为更大/更大,则相关的缓冲区尺寸滚动条将消失

要播放更多缓冲区和窗口大小(以进一步理解),请打开命令提示符窗口,然后右键单击标题栏/获取属性。缓冲区的大小和保存文本的大小,窗口是该数据上视口的大小]

© www.soinside.com 2019 - 2024. All rights reserved.