1

我正在用 C# 创建一个 Windows 窗体应用程序,我有两个窗体。用户将使用图表的主窗体和另一个窗体,其中包含:系列外观选项、轴选项、标签选项等...当按下“工具”按钮时,此窗体出现。从那里我打算让用户根据需要修改他们的图表。我的问题是 - 在第一个表单加载或初始化时填充第二个表单是否更快/更好,或者它是否应该在按下“工具”按钮时这样做。

4

4 回答 4

4

这个问题是关于急切加载(尽快加载数据)和延迟加载(在必要时加载数据)之间的区别。我认为这里的决定应该归结为用户体验。如果数据需要一点时间来加载,并且您的用户将经常访问属性窗口,那么我建议立即加载。另一方面,如果加载速度很快,或者这是一个不常见的功能,那么我建议延迟加载。因此,您需要弄清楚用户的期望。但是,如果屏幕的数据加载速度很快,那么加载的时间就无关紧要了。

我还建议您重新考虑您的属性窗口,特别是如果要经常使用它。这种用户界面的范例是将PropertyGrid嵌入到完成大部分工作的同一应用程序窗口中。考虑一下 Visual Studio 中的许多示例以及几乎任何 IDE 样式的应用程序。它们往往没有“浮动”属性窗口。范例是您显示当前在 IDE 中选择的任何对象的属性,以便快速轻松地进行修改。单独的工具 | 选项范式更适用于修改频率较低且与整个应用程序相关联的应用程序级设置,而不是应用程序管理的特定对象。同样,Visual Studio 是一个很好的例子。

于 2013-02-25T16:12:38.597 回答
2

在我看来,当您单击相应的按钮时,最好创建第二种形式的新实例。我认为您应该只在需要时为表单分配内存。

但是,如果您的表单加载速度很快,那么从用户的角度来看,这并不重要,只要您隐藏第二个表单直到单击按钮即可。

于 2013-02-25T16:12:45.927 回答
0

在启动时创建多个表单不是很可扩展。当您有 20-30 个表格时,加载需要很长时间!在需要时创建它们。

于 2013-02-25T16:15:17.080 回答
-1
// button event in your first form (Form1)
private void firstButton_Click(object sender, EventArgs e)
{
    Form2 form2 = new Form2();
    form2.ShowDialog(); // Shows Form2
}

应该使用,因为您可能根本不需要该按钮。

于 2013-02-25T16:14:06.367 回答