Значи имам следния въпрос относно редактиране на данни чрез форма. Да кажем имаме следният клас:
[code:1lpuckim]
class Student
{
private string mName;
private int mAge;
public string Name
{
get
{
return mName;
}
set
{
mName = value;
}
}
public int Age
{
get
{
return mAge;
}
set
{
mAge = value;
}
}
}[/code:1lpuckim]
и искам да направя форма, чрез която да редактирам данните на инстанция. За целта ще използвам WPF форма, с 2 TextBox-a : tbName и tbAge, и 2 Button-а: btnSave и btnCancel.
Изправен съм пред следния проблем. Как е правилно да се реализира тази форма, за да имам възможността да отказвам промените при натискане на btnCancel и съответно да ги записвам при натискане на Save, като освен това имаме процес на валидация преди записването - т.е. ако името не е празно и годините са число сейваме. Аз лично опитах реализация с Binding на TextBox-овете със съответните пропъртита на инстанцията на Student, като използвам, че Binding-a има валидация и че UpdateSourceTrigger-а може да се задава Explicit, и да се ъпдейтва когато искам (при натискане на btnSave), но проблема е, че ако валидацияата мине, пропъртито се променя, а ако другата се издъни, няма как да я върна. Т.е. искам ако всичко е валидно, тогава да се променят пропъртитата на класа (както е в ASP), а не ако един Binding е валиден да се променя пропъртито му и ако друг гръмне и после се натисне btnCancel, да имаме записани промени. Надявам се да съм обяснил добре проблема и да има някой, който да може да ми помогне.
Благодаря
