This question is locked. New answers and comments are not allowed.
i have my Datagrid bound to a global collection.
When i add new record to the global collection, how do i get the datagrid to refresh so that the new record shows up in the data grid?
When i add new record to the global collection, how do i get the datagrid to refresh so that the new record shows up in the data grid?
5 Answers, 1 is accepted
0
Accepted
Vlad
Top achievements
Rank 1
answered on 03 Jun 2009, 03:36 AM
If your collection is INotifyCollectionChanged the grid will show new record automatically - in all other situations you can call Rebind() method.
0
Marc Roussel
Top achievements
Rank 2
answered on 05 May 2010, 02:52 PM
Also be careful when you have filters applied to your collection as this could result in a refresh not working if you just issue a Rebind. Make sure you re apply any filter you added and if this means you don't need the rebind then don't use the rebind but your own filter instead.
0
Sajan
Top achievements
Rank 1
answered on 05 Sep 2012, 11:37 AM
Hi Vlad,
i have implemented notify property changed. it brings all the new records immediately but it does not show the updated value of record.
i have implemented notify property changed. it brings all the new records immediately but it does not show the updated value of record.
0
Hello,
The approach would be similar :
In your Record objects , you should implement the INotifyPropertyChanged interface.
Generally RadGridView would respect both: INotifyCollectionChanged and INotifyPropertyChanged interfaces.
If you have them correctly implemented any updates would be reflected automatically at the UI with no need of you to take care of it.
All the best,
Pavel Pavlov
the Telerik team
The approach would be similar :
In your Record objects , you should implement the INotifyPropertyChanged interface.
Generally RadGridView would respect both: INotifyCollectionChanged and INotifyPropertyChanged interfaces.
If you have them correctly implemented any updates would be reflected automatically at the UI with no need of you to take care of it.
All the best,
Pavel Pavlov
the Telerik team
Explore the entire Telerik portfolio by downloading Telerik DevCraft Ultimate.
0
Sajan
Top achievements
Rank 1
answered on 06 Sep 2012, 03:32 PM
Hi Pavel Pavlov,
I have implemented it like this. Can you please check if i am missing something.
It will be a great help.
Regards
Sajan
I have implemented it like this. Can you please check if i am missing something.
public class SalesOrderViewModel : INotifyPropertyChanged
{
//Supplies the collection of Products that the Mainpage.ProductList binds to
public ObservableCollection<
SalesOrder
> Orders { get; set; }
private SalesOrder _selectedOrder;
public SalesOrder SelectedOrder
{
get { return _selectedOrder; }
set
{
_selectedOrder = value;
NotifyPropertyChanged("SelectedOrder");
}
}
public event PropertyChangedEventHandler PropertyChanged;
/// <
summary
>
/// NotifyPropertyChanged will raise the PropertyChanged event passing the
/// source property's name that is being updated.
/// </
summary
>
/// <
param
name
=
"propertyName"
></
param
>
public void NotifyPropertyChanged(String propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
public SalesOrderViewModel()
{
Orders = new ObservableCollection<
SalesOrder
>();
SelectedOrder = null;
}
}
It will be a great help.
Regards
Sajan