我正在为一些公司建立一个c#计划。当我从公司的笔记本电脑上测试程序时,它运行顺畅而稳定。但是当我在微软终端客户端上运行该程序时,在一个列表视图中,该列表视图可以有大约1000行和5或6列,它开始减速,直到没有任何响应并且终端客户端无法使用。表单的代码大约是1000行。
我可以做些什么来提高性能?我的代码是无效的还是对mstsc有一些限制,我必须考虑一下?
答案 0 :(得分:0)
您可能需要调低mstsc体验设置:
运行MSTSC,然后点击选项>>按钮。 转到体验标签。 要么改变连接速度,要么自己关闭一些选项(特别是“菜单和窗口动画”)
您可以将这些设置保存为默认设置,也可以为特定连接保存rdp文件,这样您就不必每次都进行调整。
答案 1 :(得分:0)
来自这篇评论:“我在表格的代码中看到msrdp的性能问题,有InvalidateCode的调用,或者没有正确配置Paint事件的控件。是你的情况吗?你能发布一些代码吗? - 史蒂夫B“
我发现评论这段代码,从来没有打算做最终版本,但是在设计师的按钮完成之前是暂时的,是罪魁祸首。为什么我真的不打赌他!它现在有效!
private void terug_btn_Paint(object sender, PaintEventArgs e)
{
/* if (mf != null)
{
System.Drawing.Drawing2D.GraphicsPath myGraphicsPath = new System.Drawing.Drawing2D.GraphicsPath();
myGraphicsPath.AddLine(30, 0, 130, 0);
myGraphicsPath.AddLine(130, 0, 130, 30);
myGraphicsPath.AddLine(130, 30, 30, 30);
myGraphicsPath.AddLine(30, 30, 0, 15);
myGraphicsPath.AddLine(0, 15, 30, 0);
terug_btn.Size = new System.Drawing.Size(135, 35);
terug_btn.Region = new Region(myGraphicsPath);
terug_btn.BackColor = Color.LightBlue;
}*/
}