2011-09-12 3 views
1

VB에서 WPOC 개체를 사용하는 (WCF RIA) 도메인 서비스를 사용하는 Silverlight 프로젝트가 있습니다. DataForm을 사용하여 데이터를 표시하고 있습니다. 내 도메인 서비스에는 InsertUser, UpdateUser, DeleteUser-methods (정확하게)가 지정되어 있습니다. CommandButtonsVisibility가 설정되지 않았으므로 (기본 값을가집니다).Dataform, WCF RIA 및 POCO Entities에서 기본 CommandButtonsVisibility를 사용하는 방법?

그러나 Commit-Button은 보이지 않습니다 (비활성화되어있을뿐만 아니라 존재하지도 않습니다). CommandButtonsVisibility=All을 설정하면 편집 버튼을 사용할 수 있으며 작동합니다 (변경 사항은 db로 저장 됨). 비록 기본 동작을 사용하고 싶습니다.

CRUD 메소드가 도메인 서비스에 작성되었거나 작성되지 않은 경우 DataForm이 자동으로 버튼을 표시하거나 숨 깁니다 (필자의 삭제 메소드로 테스트 함).

내가 뭘 잘못하고 있는데, 내 업데이트 방법이 제대로 정의되지 않았나요? 는 C#의 -users를 들어

Public Sub UpdateUser(ByVal user As User) 
    '... update the user 
End Sub 

:

public void UpdateUser(User user) 
    //... update the user 
End Sub 

답변

1

우선 처음이다 그들이처럼 보이는 방법이다. DataForm은 필자가 지금까지 만난 가장 어려운 코드 중 하나입니다. 주로 마스터/하위 유형의보기에서 DataGrid에 대한 하위보기로 사용하도록 설계되었습니다. 그리고 나는 그들이 인트로 비디오에서 많이 볼 수있는 유지할 수없는 드레이프 & 드롭 코드 만 테스트 해 보았습니다.

이제 문제를 해결하십시오 : 가장 일반적인 이유는 DataForm을 올바른 백업 데이터 저장소에 바인딩하지 못했기 때문입니다. 당신이 단 하나 품목에 바인딩하는 경우에, 당신은 거의 운에서이다. 그냥 자신의 확인 및 취소 버튼을 구현하십시오. 그러나 컬렉션에 대해 작업하는 경우 ICollectionView가 구현되어 있는지 확인하는 것이 좋습니다. (ObservableCollection에서도 유용 할 것입니다.)

자세한 도움말이 필요하면 XAML의 관련 부분을 게시하고 코드를 작성하십시오.

+0

내 논문 atm의 터치 다운을 끝내기 위해 일하고 있기 때문에 일주일 후에 답을 자세히 살펴볼 것입니다. 나는 100 % DataForm에 대한 귀하의 진술에 동의합니다. 나는 DataForm의 DataField에서 이상한 ComboBox 동작에 또 다른 큰 문제를 겪었습니다. – Torsten

+0

글쎄, ComboBoxes의 경우, 카일 매클 렐런이 실제로 (대부분의) 모든 문제를 해결했음을 마술 적으로 알고 있다고 생각합니다. 그러나 어떤 이유로 Microsoft는 코드를 공개하지 않습니다. 자세한 내용은 hig 블로그 게시물을 참조하십시오. http://blogs.msdn.com/b/kylemc/archive/2010/06/18/combobox-sample-for-ria-services.aspx –

+0

글쓰기로 문제를 "해결"했습니다. 내 구성 요소. 그래서 여기에가요 ^^ – Torsten