Silverlight Datagrid - Retrieving details on Editing

Created a new Project SLDatagridClick and

Add a DataModel as shown below to the Web Project.

Add DataModel in silverlight

DataModel Wizard in silverlight

Data Model is created as shown below :

DataModel  in silverlight
WCFService  in silverlight

Add a method to the DataService as shown below :

public IEnumerable<Persons> GetPersons()
        DataEntities context = new DataEntities();
        var persons = from o in context.People
        select new
            id = o.ID,
            firstName = o.FirstName,
            lastName = o.LastName
        return persons;
public class Persons
        public int id { get; set; }
        public string firstName { get; set; }
        public string lastName { get; set; }

Add the Service Reference to the Silverlight Project.

Add Service Reference  in silverlight

Now lets get into the Silverlight project.

Modify the MainPage.xaml.cs as shown below :

using SLDatagridClick.DataServiceReference;
namespace SLDatagridClick
    public partial class MainPage :
        public MainPage()
            DataServiceClient client = new DataServiceClient();
            client.GetPersonsCompleted += new EventHandler<GetPersonsCompletedEventArgs>(client_GetPersonsCompleted);
        void client_GetPersonsCompleted(object sender, GetPersonsCompletedEventArgs e)
            dg.ItemsSource = e.Result;

Now lets give it a run and see the output :

DataGrid Display  in silverlight

Now lets get to work. When I Edit the cell , I should be able to retrieve the modified cell contents. I have just tried to bring together some of the scenarios I came across while using Datagrid. In this article I would demonstrate one such scenario :

Lets add the code for that scenario :

Add the event handler :

dg.CellEditEnded += new EventHandler<DataGridCellEditEndedEventArgs>(dg_CellEditEnded);

Make use of the CellEditEnded.