在编写C#的winform应用程序的时候,比较普遍的一个问题可能就是界面交互了,因为有良好的功能逻辑,我们可以做很多的事情,但是,良好的界面交互也同样非常重要,原因很简单,因为使用者最直观的感觉全部来自于操作界面.
为了良好的界面交互,我们要合理地摆设各种控件的位置,不断调整他们的大小,更要将程序的执行情况随时能够更新到界面的相关控件上,一般情况下,我们都是使用TextBox或者Label来进行展现的.
这里会有个小问题,那就是当我们后台在处理一个长长的循环操作的时候,如果想把每次循环的结果都更新到界面的话,如果循环量巨大的话,有可能造成操作界面很容易失去响应,但实际上程序仍旧在运行,只是界面控件的压力比较大,且因这些控件内容的更新与逻辑运算相比性能相差过多,于是……
所以,遇到这样的情况,应该分段地进行结果更新,甚至可以使用定时器来进行结果获取,这样都能得到比较好的结果,再者,因该尽量减少界面上更新控件的数量,毕竟其性能不是太好,应秉持精用的原则.
最后再胡扯一点,每次在后台更新控件的值以后,需要调用一下update()才能更新哦,否则,知道程序结束才能更新控件内容……多嘴一句,可能大家也不会这么大意,哈哈
为了良好的界面交互,我们要合理地摆设各种控件的位置,不断调整他们的大小,更要将程序的执行情况随时能够更新到界面的相关控件上,一般情况下,我们都是使用TextBox或者Label来进行展现的.
这里会有个小问题,那就是当我们后台在处理一个长长的循环操作的时候,如果想把每次循环的结果都更新到界面的话,如果循环量巨大的话,有可能造成操作界面很容易失去响应,但实际上程序仍旧在运行,只是界面控件的压力比较大,且因这些控件内容的更新与逻辑运算相比性能相差过多,于是……
所以,遇到这样的情况,应该分段地进行结果更新,甚至可以使用定时器来进行结果获取,这样都能得到比较好的结果,再者,因该尽量减少界面上更新控件的数量,毕竟其性能不是太好,应秉持精用的原则.
最后再胡扯一点,每次在后台更新控件的值以后,需要调用一下update()才能更新哦,否则,知道程序结束才能更新控件内容……多嘴一句,可能大家也不会这么大意,哈哈