2010-05-24 2 views

답변

1

MVVM 디자인 패턴이 올바르지 않습니다. 속성을 정의하기 위해 뷰 모델을 계속 사용하십시오. 그 재산을 통제권으로 옮기는 건 어때?

+0

View-model (보기가 아님)에 속성이있는 경우 .... 어떻게이 값을 페이지에서 설정할 수 있습니까?이 usercontrol을 사용합니까? – Relativity

+0

제대로 바인딩하고 있습니까? 예를 들면 다음과 같습니다.

+0

안녕 Justyna, 나는 내 문제에 대해 더 자세히 설명 할 것입니다 ... 나는 wpf에서 mvvm을 통해 사용자 정의 컨트롤을 만들었습니다. 내보기에는 .. 나는 gridview 있습니다. 페이지에서 내 사용자 정의 컨트롤을 사용할 때 ... 내 데이터 컨트롤에 사용할 수있는 gridview (내 페이지에서 사용 가능)를 할당해야합니다 ... 어떻게 설정합니까? ... 속성을 가질 것으로 생각했습니다. 뷰의 .cs 파일에 정의되어 있고 내 페이지에서 데이터 세트를 지정합니다. 하지만 mvvm을 준수하는지 궁금합니다. ( – Relativity

1

오히려 ObservableCollection을 사용하십시오. myModel

ObservableCollection<myModel> myOC = new ObservableCollection<myModel>();

는 속성에 DataTable을에 열을 변환 구축 할 수있는 클래스입니다.

MainViewModel에서 DataReader를 반복하고 그 중 myOC을 만듭니다.

이제 myOC을 페이지의 ListView에 바인딩하십시오.

은 볼 수 있어야의 ListView의 DataTemplate을 뷰 모델에서 (UserControl을) 도면 데이터는 myModel

에서 건설하지만 당신의 UserControl을 내부 전체 목록보기 있습니다. 그게 목적이라면, 더 좋은 아이디어를주기 위해 전체 디자인을 알려주십시오.

+0

다른 페이지에서 사용자 정의 컨트롤을 사용하고 있습니다. 즉, 다른 페이지에 대해 서로 다른 데이터 테이블을 사용한다는 것을 의미합니다. 따라서 우리는 클래스 "myModel"을 가질 필요가 있으므로 OC를 만드는 것이 어렵습니다. 내가 직면 한 주요 문제는 사용자 정의 컨트롤에서 페이지의 데이터에 액세스하는 것과 관련이 있습니다. – Relativity

+0

@Anish : 각 UserControl의 구성 요소는 무엇입니까? – Amsakanna

+0

나는 당신을 잡으려고하지 않았다 :( 어쨌든, 나는 하나의 사용자 정의 컨트롤을 가지고 ... 어떤 2 ​​gridviews 및 4 버튼 (추가/모두 추가/제거/모두 제거) ...이 사용자 정의 컨트롤은 일부 데이터를 추가/제거하는 것입니다 하나의 gridview에서 다른 – Relativity

관련 문제