TextBox and Databinding
I have got a textbox control which is bound to an object which implements IEditableObject. Now how can I make a rollback operation if I click "Cancel" on the form where the textbox
is placed.
The bound object is something like this:
public class Customer : IEditableObject
{
private bool _transactionStarted = false;
private String _firstName, _originalFirstName;
private String _lastName, _originalLastName;
private String _phoneNumber, _originalPhoneNumber;
public String FirstName
{
get
{
return _firstName;
}
set
{
_firstName = value;
}
}
public String LastName
{
get
{
return _lastName;
}
set
{
_lastName = value;
}
}
public String PhoneNumber
{
get
{
return _phoneNumber;
}
set
{
_phoneNumber = value;
}
}
void IEditableObject.BeginEdit()
{
if (!_transactionStarted)
{
_transactionStarted = true;
_originalFirstName = _firstName;
_originalLastName = _lastName;
_originalPhoneNumber = _phoneNumber;
}
}
void IEditableObject.CancelEdit()
{
if (_transactionStarted)
{
_transactionStarted = false;
_firstName = _originalFirstName;
_lastName = _originalLastName;
_phoneNumber = _originalPhoneNumber;
}
}
void IEditableObject.EndEdit()
{
if (_transactionStarted)
{
_transactionStarted = false;
_originalFirstName = "";
_originalLastName = "";
_originalPhoneNumber = "";
}
}
}
So how can I get a rollback operation? Is this even possible with a textbox?

