繁体   English   中英

C#动态标签空白

[英]C# dynamic label blank

我创建了一个非常基本的控制台应用程序,该应用程序在后台执行一些代码。 在执行此操作时,它会生成一个自定义消息框(从技术上来说是Windows窗体),该消息框仅显示一个标签告诉用户请稍候。 问题是标签永远不会显示(这只是标签应该在的大白框)。 我尝试创建动态标签并将其放置在此处,但这也行不通。

该表格以以下方式显示:

public void DoSomething()
{
   MyForm form = new MyForm();
   form.Show();
   try {
   // Execute other logic
   } finally { form.Close(); }
}

我猜它与调用Show()有关,但我并不乐观。 我输入日志记录,看到它正在通过构造函数,生成了动态标签(通过Controls.Add(myLabel)添加到表单中),但是它仍然不显示任何标签。

Form要求启动消息泵以正确显示。 这需要调用Application.Run 不幸的是,这将阻塞当前线程,直到“应用程序”完成为止,因此将无法仅“插入”您的代码。

话虽如此,如果您正在开发需要Windows的应用程序,则应考虑使其成为真正的Windows应用程序而不是控制台应用程序。 如果需要,您可以隐藏主窗体,这样可以使上面的代码正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM