나는 SL 사용자 컨트롤이 간단하다. 모든 고객을 표시하는 목록 상자 및 오른쪽에는 목록 상자의 SelectedItem (고객)에 바인딩 된 여러 텍스트 상자 및 콤보 상자가 표시됩니다. SelectedItem은 SelectedCustomer 속성에 바인딩됩니다.Silverlight Twoway 바인딩 및 롤백 변경 - 방법?
나는 (바운드 텍스트 상자와 콤보 상자에서) 고객에 대한 변경을 취소하는 패턴/방법론을 찾고 있습니다.
편집 컨트롤 (텍스트 상자 및 콤보)은 목록 상자의 선택된 항목에 단방향 또는 양방향 바인딩 될 수 있습니다. 양방향으로 바인딩 된 경우 텍스트 상자의 즉각적인 변경 내용이 목록 상자에 반영됩니다. 한쪽 경계에 있으면 텍스트 상자의 변경 사항이 SelectedCustomer 객체에 반영되지 않습니다.
편집 양식의 하단에는 일반적인 저장, 취소, 삭제 버튼이 있습니다. 예를 들어 save 버튼은 SelectedCustomer 객체를 취할 것입니다 (twoway bound이면 서버에 저장하기 위해 서비스를 통해 보낼 것입니다).
텍스트 상자가 한 방향으로 묶인다면 어떻게 든 텍스트 상자 값을 캡처하고 저장을 위해 서버로 보내기위한 개체에 삽입해야합니다.
twoway 바인딩을 사용하고 저장 작업이 실패했다고 말하면 SelectedCustomer 값을 원래 값으로 다시 설정해야합니다. 그렇지 않으면 클라이언트는 이제 저장되지 않은 데이터를 계속 볼 수 있습니다.
은 .... 이런 종류의 시나리오를 처리하는 쉬운 방법이 있어야합니다 것을 쉽게 사용자 좌절에 이르게로
좋아, 그럼 내가 뭘했는지는 고객 클래스, 즉 퍼블릭 partial class Customer : SL 애플리케이션의 IEditableObject에 대한 부분 클래스가 생성된다. 메서드 내에서 여기에 비슷한 코드를 제공 http://www.silverlight.net/learn/tutorials/silverlight-4/web-services-and-silverlight/#Exercise3 – David
-1 수락 된 답변을 원하십니까? 제발 ... 미스터 스마트 -1 유권자 ... –