I've tried refresh and it doesn't seem to work. I would try rebind, but I don't understand what to pass for GridViewTemplate. I've tried resetting the datasource which works unless the grid has records in it and the new datasource returns no records then the grid continues to show all the records whereas if the new datasource has at least a record the grid will then correctly update, but I thought using rebind might be faster then resetting the datasource..
Also I wanted to mentions I'm looking forward to SP1 for the rowchanged event. I appreciate you guys always improving these controls.
23 Answers, 1 is accepted
Thank you for reporting this issue. It seems that we will have to add more clarity on the different ways to refresh the grid. What scenarios are you usually confronted with?
In the upcoming Service Pack 1, the grid will automatically update upon deleting records that are displayed in it.
Sincerely yours,
Kiril
the Telerik team
Instantly find answers to your questions at the new Telerik Support Center
Typically I use a DETAIL VIEW totally separate from the grid. The inline detail included with the grid does not seem very user friendly, normally because there is far too much data to show. I normally show the detail right next to, or under the datagrid. That goes for Telerik's webforms control too. I've not found a datagrid that allows detail to be shown outside the datagrid, say in a panel. Is that possible for Telerik to work on??
As far as refresh, the only way I've ever updated the grid to reflect changes, is to set the datasource, and many times unfortunately making a round trip to the database even when only one record changed or was deleted. But this is the easiest way. I can't imagine the datagrid control making this easier... it's mainly how you manage your datasource.
Hello Chad, Kiril, PortVista,
I'm experiencing the same problem. I'm having a dataset that changes every second. I would like to do a 'rebind' every second but the control doesn't seem to support this.
I have tried the UpdateView method on the GridView's MasterGridViewInfo but to no avail.
Furthermore, when I do a rebind by re-setting the datasource, this doesn't seem to work (haven't retested this using SP1). Therefore I create a new list and attach this to the grid. This solves the problem but somehow the previous list is not releases, presenting me with a memory leak.
Any thoughts ?
Regards,
boris
I have done some more tests on the binding and as far as I understood it, the behaviour seems to be the same in SP1.
I have created two lists and I am altering between the two lists when binding to the grid. Now I know the lists are not leaking because they stay alive and only two of them exist. However, when running this code my application keeps leaking memory. This is the code snippet:
if (updateList1.Count == 0)
{
foreach (object o in taskManager.FilteredTasks)
updateList1.Add(o);
updateList2.Clear();
radGridViewTracking.DataSource = updateList1;
}
else
{
foreach (object o in taskManager.FilteredTasks)
updateList2.Add(o);
updateList1.Clear();
radGridViewTracking.DataSource = updateList2;
}
b.
When updating the data source the grid should automatically update its contents.
Please, check that the list you are using implements IBindingList interface. If the problem still persists, please, create a simple project exposing the bug and send it to us to investigate. You can do so in a new support ticket.
Kind regards,
Evtim
the Telerik team
Instantly find answers to your questions at the new Telerik Support Center
Now the issue is a memory leak. My project works just fine with DataGridView controls, but as soon as I add RadGridView and change the dataset (every second), I see memory utilization increasing little by little.
Just to make sure I did not screw up anything, I've created a simple project that has a data set that is updated every second with the time information. I see the same issues with memory leak. See code below.
Public Class Form1
Dim DT As DataTable
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
DT = New DataTable
Dim Key(0) As DataColumn
Dim Column As DataColumn
Column = New DataColumn
Column.DataType = System.Type.GetType("System.Int16")
Column.ColumnName = "RowId"
DT.Columns.Add(Column)
Key(0) = Column
DT.PrimaryKey = Key
Column = New DataColumn
Column.DataType = System.Type.GetType("System.String")
Column.ColumnName = "Time"
DT.Columns.Add(Column)
Dim DR As DataRow = DT.NewRow
DR.Item("RowId") = 1
DR.Item("Time") = Now().ToString
DT.Rows.Add(DR)
RadGridView1.DataSource = DT
End Sub
Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim DR As DataRow = DT.Rows.Find(1)
If DR IsNot Nothing Then
DR.Item("Time") = Now().ToString
End If
RadGridView1.DataSource = DT
End Sub
End Class
I have plenty experience with rad.ASP.Net rad.GridView, but I am a novice with Winforms.
Also, I could not figure out how to have the cells auto-resizing based on data changes. Is that possible?
Let me know if you want me to send you the project as a zipped file.
Thanks!!
Fabio Videira.
*begin rant*
HONESTLY, I've really had it with Telerik's WinForms. I'm starting to wonder if there are any problems with Telerik's ASP controls. I have noticed minor UI issues with the menus and editor messing up in DotNetNuke, but I've not really looked into it. I've been moved onto a Windows app, and I thought why not use the Telerik WinForms?
I didn't realize that not only do they contain lots of bugs, but they are much slower. How is this making our products better? Seriously!
*end rant*
some thoughts/answers:
To Kiril: I have now implemented the IBindingList and the grid view is indeed updating the contents automatically.
To Fabio: I have not yet found the time to create a test project, but I'm confident yours proofs that there is indeed a memory leak. One of my beta-testers used the tool (a time tracking application) and found that it locked over a GB of RAM.
To PortVista: I too am under the impression that the quality of the WinForm controls is inferior to the ASP.NET controls. The performance appears indeed to be a problem. For now I'm still giving them the benefit of the doubt (because of a proven track record), but we need to ship our products too, so... Should I have more time I'd try to have a look at the code of the controls, but for now time is a luxury that I don't have.
To Telerik: Would it be possible to fix the memory leak problem and provide us with an intermediate build ?
Regards,
boris
We will review and research the memory leak and performance problems and will do our best to fix them for SP2. We do not have an official policy to provide custom builds on a regular basis, because our service packs are usually just 4 weeks apart. Still, we may provide a custom build or two to the most active users. I hope you understand our position on this.
Kind regards,
Julian Benkov
the Telerik team
Instantly find answers to your questions at the new Telerik Support Center
boris
This Application runs several processes, and stores the results of those processes in a Microsoft SQL Server Database. That information is displayed in a Grid. After the processes complete, the grid is rebound and refreshed.
I changed the application to use the RadGridView control, and now, with each rebind and refesh, the foot print increases by over 1 meg. In a 13 hour period, the foot print went from 45 Meg, to over 460 Meg.
As you can see this is unacceptable. I would suggest that the severity of this issue be escalated, and even warn customers of the problem. I run this application in-house, so I can return it to the Microsoft control without much impact.
However, any customer deploying this control to their customer base, are in for major performance and technical support problems. Not to mention the cost of rolling out a fix to that customer base.
I'm a staunch supporter of Telerik Controls, but this particular problem is a bit disturbing.
I would like to make a suggestion. I'm making assumptions here, but it appears that your QA department focuses their testing on basic uses of the control. May I suggest that they do more complex testing with the controls before they are released to the public. Most of us do not simply plop a control on a form, fill it with data, and be done.
Finally, may I suggest that CHM file be taken down off of your site, until it can be properly filled out. Some links refer to ASPNET controls (and named that way), and redirect to pages that don't exist in the CHM. Further, the "Tutorial" sections fo the CHM are blank. They should at least state that tutorials would be available in the future. Worse than that, some of the help pages for the GridView indicate from some of the screen shots, that the grid is capable of paging.
If it is capable of paging, I have yet to find it, and there is no direct description of the ability, however, as I said, some screen shots give that impression.
Hopefully, we'll see an SP2 with some significant updates that will address many of these issues.
Thanks
I suggest a history or public confirmed bug report list we can all look at. I really did waste a lot of time on Telerik controls only to find it was actually a bug and not anything I could work around.
I'm currently trying to postpone the (beta-)release of the product we are working on. However, it's becoming a rather big problem. Telerik has confirmed (in a support thread) that SP2 of the controls should fix the problems (by the end of this month)
Unfortunately I don't have any time to spare, because otherwise I would have had a look at the code...
Good point on the documentation Kuba Cole !
I need to add another problem to the list. I've only realized this today, but dates are not properly sorted in a GridView. Say I have the following dates in a column:
6/1/2007 12:00:00 AM
6/5/2007 12:00:00 AM
6/11/2007 12:00:00 AM
Sorting in ascending order does the following:
6/1/2007 12:00:00 AM
6/11/2007 12:00:00 AM
6/5/2007 12:00:00 AM
I understand why, however, the Microsoft control does not function this way. The Microsoft Control correctly identifies the column as date data, and sorts it properly. It can be averted by filling the data in the column to displaying this way:
06/01/2007 12:00:00 AM
06/05/2007 12:00:00 AM
06/11/2007 12:00:00 AM
I don't know if anyone has already identified this problem, but here it is in the case that they haven't.
Thanks
There have been no issues reported to DateTime column sorting. Will it be possible to send us your project so that we can research the report? Please, open a support ticket and attach it there together with the steps to reproduce the problem.
Thank you for the feedback.
Regards,
Julian Benkov
the Telerik team
Instantly find answers to your questions at the new Telerik Support Center
A sample project isn't necessary. The only ocnditions need to be apply:
1) Create a form with a RadGridView
2) Bind it to an Microsoft SQL 2005 Database with a Datetime Field
3) The Default date format should be m/d/yyyy hh:mm:ss tt
Run the form, and you will get your sorting problem.
Note, if the date format is mm/dd/yyyy hh:mm:ss tt, it sorts correctly.
Thanks, Greg
We are still unable to reproduce the problem with the DateTime column with the instructions you have provided. We will be grateful if you send send us a simple application (or a code snippet used in your scenario) with a small part of your database so that we can research where the problem comes from. This will be very helpful for us.
Thanks in advance,
Julian Benkov
the Telerik team
Instantly find answers to your questions at the new Telerik Support Center
Thanks, Kuba
I am also facing the same problem, i m updating the database from outside the grid. The grid is not refreshed when you insert or delete any rows in the database. I tried rebinding the datasource to the grid, but no luck.
I m using the Radgridview Q3.
Did you find any solultion to this problem ??
We are facing the same issue. Dataset shows updated number of records but when we bind the same to RAD GRID no changes are reflected.
We have set the grid datasource as Null and then bind again with the udpated dataset but no help.
Need help on urgent basis.
regards,
Parimal
We will suggest upgrading to the latest Q1 2008 SP1 release. There are many improvements and enhancements to our RadGridView component, including a couple of fixes to your particular problems. In case you still have issues, please send us a simple application (or a code snippet used in your scenario) with a small part of your database so that we can research where the problem comes from.
You can download component suite from your Client.net accounts.
Sincerely yours,
Julian Benkov
the Telerik team
Instantly find answers to your questions at the new Telerik Support Center
I've also implemented the IBindingList and the IEditableObject
the add/remove indeed updates the raddropdownlist
But if a property is changed inside an entity contained in the datasouce, the control does not updates
What can I do?
Thank you for contacting us.
RadGridView is capable of fetching bindable properties and data. However, one important issue must be noted: During the data binding process, the grid extracts the data from the data source, but for any later changes in the data source, RadGridView should be notified. Your bindable collection and business objects should follow some standards established in .NET in order to notify RadGridView about the changes:
- The collection that you will bind to RadGridView should implement IBindingList or IBindingListView interfaces. This will allow RadGridView to get notified about insert and delete operations of records.
- Your business objects should implement INotifyPropertyChanged interface (.NET 2.0). This will allow RadGridView to reflect changes which occur to the properties of the business objects.
Please refer to our Reflecting Custom Object Changes in RGV help article.
I hope this information helps. Should you have further questions, I would be glad to help.
Regards,
Desislava
Telerik