【问题标题】:How to create a output log window similar to visual studio log window如何创建类似于 Visual Studio 日志窗口的输出日志窗口
【发布时间】:2019-05-18 03:14:14
【问题描述】:

我需要在我的 windows 窗体中添加一个输出窗口,类似于 Visual Studio 中的输出窗口。

我所做的是创建一个列表框并计划在它们到达时记录详细信息。我不知道如何添加突出显示的按钮控件(关闭、窗口位置、自动隐藏)。我对视觉工作室、winforms、c# 完全陌生。只是探索各种东西来起草一份申请。如果有人可以提出添加这些控件的想法,我会很好。

另外请建议是否有替代列表框来显示输出窗口。

【问题讨论】:

  • 这是一个 DockPanel
  • winforms 中没有停靠面板组件。如何添加?
  • 您可以创建一个面板,添加一个列表框,添加一些按钮或图片框用于关闭和隐藏事件,然后在关闭和隐藏按钮中,使用Panl.Visible = False
  • 这是个好主意,但有没有自定义的方法,而不是像模板一样添加按钮或图片框?

标签: c# winforms logging visual-studio-2017


【解决方案1】:

您可以使用 SplitContainer 并添加 Textbox 或 RichTextbox 作为您想要的输出窗口。然后,您可以将输出文本附加到 Textbox 或 RichTextbox 的文本属性。除了突出显示的控件,您可以在运行时更改 SplitContainer 的大小,或使用菜单选项隐藏其中一个部分。

~尼勒什

【讨论】:

    【解决方案2】:

    根据 Sam W 的评论,使用 DockPanel 将在 winform 内创建另一个窗口,类似于 Visual Studio IDE 中的输出、错误窗口。

    dockpanelsuite.com

    此站点提供了惊人的对接功能http://docs.dockpanelsuite.com/ 提供了安装它们的步骤。

    在 Form 1 中,在 Form1 的 Properties 中设置 isMidiContainer = true 并从 toolBox 中拖动 DockPanel(在安装并按照该页面中的步骤操作之后)。

    创建一个form2并添加以下内容

    using WeifenLuo.WinFormsUI.Docking;
    
    namespace Forms
    {
      public partial class Form2 : DockContent
      {
         public Form2()
        {
           InitializeComponent();
        }
     }
    }
    

    在Form1中添加

    public Form1()
    {
      InitializeComponent();
      Form2 f2 = new Form2();
      f2.Show(dockPanel, DockState.DockBottom);
    }
    

    我们可以添加更多表单并将它们停靠到一个父表单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-05
      相关资源
      最近更新 更多