我发现一些源代码在这个线程张贴雷克斯洛根在这里的SO:
link text
- ...... Foredecker在同一个线程中发布了一些非常有趣的代码,但这些代码不完整且复杂:我对"Trace“工具还不够了解,不知道如何完全实现它... *
我能够使用这个控制台代码雷克斯(友好地)成功地发布在WinForms应用程序中,以记录各种事件,并将消息推送到调试中有用的位置;我也可以从应用程序代码中清除它。
当我打开控制台窗口(在Main Form load事件中)时,我似乎无法可靠地设置控制台窗口的屏幕位置。如果我试图像这样设置WindowLeft或WindowTop属性,我会得到编译阻塞System.ArgumentOutOfRangeException错误:
窗口位置必须设置为当前窗口大小适合控制台的缓冲区,并且数字不能为负数。参数名:left实际值为#
但是,我可以设置WindowWidth和WindowHeight属性。
我已尝试将激活控制台的代码移动到不同位置,包括:
1.在“运行”MainForm之前在Program.cs文件中
1.调用MainForm ctor中的“InitializeComponent()”之前和之后
1.在Form Load事件中
1.在显示的表单事件中
控制台在代码中的所有这些地方都被激活了,但是在屏幕左上角的区域似乎是随机切换的。
控制台窗口打开的位置似乎随机变化(主窗体总是在屏幕上的同一位置初始化)。
1条答案
按热度按时间ryevplcw1#
你可以试试这样东西。
此代码设置控制台窗口在控制台应用程序中的位置。
此代码设置控制台窗口在WinForm应用程序中的位置。