2016-03-02 78 views
0

我有一个winforms应用程序,当我最小化窗口时,我需要进程仍在运行。直到我设置RadGrid数据源时,这一切都可以:radGrid1.DataSource = datasource1; 当我以这种方式设置数据源时,应用程序只会冻结,没有任何反应。 经过一番搜索,我修改了代码: radGrid1.BeginUpdate(); radGrid1.DataSource = datasource1; 这样我就可以设置数据源,但是我的网格会丢失格式。 如果我添加radGrid1.EndUpdate()它也会冻结。设置RadGridView数据源时,应用程序挂起/冻结

我能做些什么来加载数据源并且不会丢失我的radgrid格式?

问候

+0

你有任何格式化事件,例如: 'CellFormatting'?你的网格格式会丢失什么格式? – Roman

+0

你可以上传一个小样本来展示这个问题吗? – checho

回答

1

From the telerik docs

为了防止电网从遍历所有数据字段集合中的GridViewTemplate.AutoGenerateColumns属性设置为False。在这种情况下,在排序,分组等时可能使用的其他字段应包含在MasterGridViewTemplate.Columns集合中。通过这些设置,只会提取用作列FieldName属性的属性或MasterGridViewTemplate.Columns中指定的属性。

应该解决您所描述的“丢失格式”的问题。 第二个问题,程序冻结,并不是我在Windows窗体环境中使用RadGridViews的许多场合中遇到过的。

我能想到的唯一的事情就是你的数据源收集过大,或者集合中的项目都将RadGridView尝试生成列时AutoGenerateColumns属性设置为true太多的领域。

+0

我的集合只有20行,它应该是一个流畅的过程...将AutoGenerateColumns设置为false并不能解决问题。我无法弄清楚。当我调试应用程序只是当数据源设置时挂起...无论如何,谢谢 – Reznor13