Terminal.Gui 离开字符仍然在 Linux 上生成

Terminal.Gui when leaving charracter are still generated on Linux

我使用 .NET 5 和 Terminal.Gui library from Miguel de Icaza 编写了一个小型控制台程序。

当我 运行 它在 Windows 上时,一切正常。我将它发布为 Linux 的自治单个文件,我 运行 在 Ubuntu 20.04 LTS 上将其作为 Windows 10 中的 WSL 1 发布。它再次运行良好,但是在 Linux 上,当我使用 top.Running = false; 退出程序时,屏幕没有被清除(不是真正的问题)但是每次鼠标移动都会在控制台上创建更烦人的字符。

有没有人解决这个问题

如果找到 [GitHub Terminal.Gui 项目问题的解决方案][1] 我只需将 Application.Shutdown(); 添加到我的 main.所以它变成了:

static int Main(string[] args)
{
  int rc = 0;
  try
  {
    Application.Run<AppGui>();
    Application.Shutdown();
  }
  catch (Exception e)
  {
    Console.WriteLine(e.Message);
    rc = -1;
  }

  if (rc > 0)
    return AppGui.rc;
  else
    return rc;
}

提议的Application.Driver.End()没有完全解决当我点击鼠标按钮时仍然有垃圾的问题(右击过去不再有效)。 [1]: https://github.com/migueldeicaza/gui.cs/issues/281