I am writing a new WPF application. I am currently using a control from another vendor and I am unable to achieve the functionality described below. Before I get too far down the road I want to make sure I am using controls that will function per my design requirements. I would like to know if it is possible implement a grid with the features described below using the Telerik grid control for WPF.
In short, what I want to implement is explicit save and cancel functionality for each row in the grid. If the user edits a row I want them to have to click a Save button before their changes are written to disk. Also, I want to display a cancel button that will undo any edits. Can you show me a grid control that implements this??
When the grid is initially displayed I want each row to display a Delete button in the rightmost column.
When the user starts to edit a certain row, I want to hide the Delete button and replace it with two buttons: Save and Cancel.
User must be able to use the tab key to navigate to Save and Cancel buttons.
User can click a column in any row and begin editing i.e. no Edit button.
Default values are visible for all columns in new item row upon editing.
Delete button is shown for all rows except new row (ideally a binding).
Upon editing, Save and Cancel buttons become visible (ideally a binding so that Save becomes visible only when data is valid).
Tab key: Save, Cancel and Delete buttons receive focus when tabbed to. Pressing tab key while in edit mode moves cursor from data last column to Save, then to Cancel, then wraps back to first data column of same row. Buttons show correct styling when focused.Save and Cancel click behavior: if row is an update to an existing row, edit mode is ended and focus stays on current row. If an insert (user is editing new item row), edit mode is maintained and focus is moved to first column of new item row.Pressing Esc key has the same effect as clicking Cancel (ideally fires same command).
Save, Delete, Cancel buttons can bound to viewmodel commands.
Save, Delete, Cancel buttons share a common column or make efficient and attractive use of space.When editing, user cannot navigate to a different row unless changes to current row are saved or cancelled.