다른 클래스에서 속성 변경 이벤트 발생

필 루니

내 프로젝트에서 사용자 정의 컨트롤에 목록을 표시하고 싶습니다. 이를 위해 ListView 컨트롤이있는 사용자 정의 컨트롤 인 CategoryView가 있습니다. 그리고 CategoryViewModel. ViewModel에는 속성 변경 이벤트를 발생시키는 목록-속성이 있습니다.

public class CategoryViewModel : NotificationObject
{
    private List<string> categoryList;

    public List<string> CategoryList
    {
        get
        {
            return this.categoryList;
        }
        set
        {
            this.categoryList = value;
            this.RaisePropertyChanged("CategoryList");
        }
    }
}

이 목록은보기의 ListView 요소에 바인딩됩니다.

CategoryViewModel에서 List를 변경하면 제대로 작동하고 속성 변경 이벤트가 발생합니다. MainWindowViewModel에서 List를 변경하면. 속성 변경 이벤트가 발생하지 않으며보기가 업데이트되지 않습니다. 어떻게해야합니까?

MainWindowViewModel에서 CategoryList를 변경합니다. 목록이 올바르게 채워집니다.

CategoryViewModel categoryViewModel = new CategoryViewModel();
categoryViewModel.CategoryList = logger.ReadLogfile(this.logFileName).ToList();
Sheridan

당신은 다소 혼란스러운 것 같습니다. 당신은 하나가 ListView당신의를 CategoryView UserControl. 그것의 ItemsSource속성은 수 기본보기 모델의 컬렉션을 변경할 때 데이터는, 그래서 분명히 하나 개의 컬렉션에 바인딩 하고CategoryViewModel, 하나는 영향을 미칠 것입니다 ListView.

이 당신의 코드에서 보인다 CategoryViewModel는 AS 설정 DataContext에 대한 UserControl기본보기 모델의 모음이 연결되지 않도록, ListView. ListView대신 기본보기 모델의 컬렉션에서 에서 데이터 바인딩 하려면 RelativeSource Binding대신 a를 사용해야합니다 .

<ListView ItemsSource="{Binding SomeCollection, RelativeSource={RelativeSource 
    AncestorType={x:Type YourPrefix:YourParentType}}}" ... />

그럼에도 불구하고 이제는 컬렉션 CategoryViewModel이 더 이상 연결되지 않으므로 여기서 수행 할 작업을 정확하게 결정하는 것이 좋습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

이벤트 발생에 따른 클래스 변수 변경

분류에서Dev

비활성화 된 경우에도 중첩 된 변경 이벤트가 계속 발생합니다.

분류에서Dev

클래스 속성을 변경하면 다른 결과가 발생하는 이유는 무엇입니까?

분류에서Dev

클래스 이름이없는 경우에도 Javascript 이벤트가 계속 발생합니다.

분류에서Dev

파생 클래스에서 바인딩 속성을 설정해도 파생 클래스에서 변경된 속성이 실행되지 않습니다.

분류에서Dev

속성 블록의 다른 클래스 속성에 클래스 속성을 할당하려고 할 때 MATLAB에서 "정의되지 않은 변수"오류가 발생하는 이유는 무엇입니까?

분류에서Dev

다른 클래스에서 발생한 이벤트에 반응하는 방법?

분류에서Dev

다른 클래스에서 발생한 이벤트에 대해 알아보기

분류에서Dev

UserControl 속성 변경시 이벤트 발생

분류에서Dev

Angular [(ngModel)] 다른 이벤트 발생 후 데이터 변경

분류에서Dev

부모 클래스의 열거 형 속성은 파생 클래스 내에서 변경되어야합니다.

분류에서Dev

IsKeyboardFocusWithin 속성에 false 값이있는 경우에만 LostFocus 이벤트 발생

분류에서Dev

필드 변경시 MVVM 개체 발생 속성 변경 이벤트

분류에서Dev

클래스에서 속성을 다른 속성으로 이동하면 "System.InvalidCastException : 'Object must implement IConvertible.'"예외가 발생합니다.

분류에서Dev

scala : ListView 구성 요소에 대해 이중 "선택 변경"이벤트 발생

분류에서Dev

값 변경 이벤트가 jquery에서 발생하지 않습니다.

분류에서Dev

다른 스크립트에서 코 루틴을 발생시키는 이벤트 생성

분류에서Dev

pytest가 기본 클래스에서 PASSED 종속성을 승인하지 않으면 파생 클래스에서 SKIPPED 테스트가 발생합니다.

분류에서Dev

Highcharts : 다른 차트에서 클릭 이벤트가 발생할 때 차트를 변경하거나 다시 그리는 방법은 무엇입니까?

분류에서Dev

클래스 내 속성 변경 이벤트

분류에서Dev

구성원이 클러스터에 참여하는 경우 hazelcast #addLocalEntryListener에서 발생한 제거 / 제거 이벤트를 가져옵니다.

분류에서Dev

이벤트 발생 후 UITableViewCell에서 텍스트 색상 변경

분류에서Dev

이벤트 발생 변수 생성

분류에서Dev

MainPage.xaml.cs 생성자에서 다른 클래스의 이벤트에 이벤트 처리기를 등록하는 방법

분류에서Dev

<p : selectManyMenu var>에서 ELException 발생 : 'java.lang.String'클래스에 'foo'속성이 없습니다.

분류에서Dev

다른 클래스에서 레이블 텍스트 변경

분류에서Dev

Qt 다른 클래스에서 레이블 텍스트 변경

분류에서Dev

UserControl의 텍스트 변경 이벤트가 Windows 응용 프로그램에서 발생하지 않습니다.

분류에서Dev

다른 클래스에서 참조 된 텍스트 필드의 값을 변경하면 오류가 발생합니다.

Related 관련 기사

  1. 1

    이벤트 발생에 따른 클래스 변수 변경

  2. 2

    비활성화 된 경우에도 중첩 된 변경 이벤트가 계속 발생합니다.

  3. 3

    클래스 속성을 변경하면 다른 결과가 발생하는 이유는 무엇입니까?

  4. 4

    클래스 이름이없는 경우에도 Javascript 이벤트가 계속 발생합니다.

  5. 5

    파생 클래스에서 바인딩 속성을 설정해도 파생 클래스에서 변경된 속성이 실행되지 않습니다.

  6. 6

    속성 블록의 다른 클래스 속성에 클래스 속성을 할당하려고 할 때 MATLAB에서 "정의되지 않은 변수"오류가 발생하는 이유는 무엇입니까?

  7. 7

    다른 클래스에서 발생한 이벤트에 반응하는 방법?

  8. 8

    다른 클래스에서 발생한 이벤트에 대해 알아보기

  9. 9

    UserControl 속성 변경시 이벤트 발생

  10. 10

    Angular [(ngModel)] 다른 이벤트 발생 후 데이터 변경

  11. 11

    부모 클래스의 열거 형 속성은 파생 클래스 내에서 변경되어야합니다.

  12. 12

    IsKeyboardFocusWithin 속성에 false 값이있는 경우에만 LostFocus 이벤트 발생

  13. 13

    필드 변경시 MVVM 개체 발생 속성 변경 이벤트

  14. 14

    클래스에서 속성을 다른 속성으로 이동하면 "System.InvalidCastException : 'Object must implement IConvertible.'"예외가 발생합니다.

  15. 15

    scala : ListView 구성 요소에 대해 이중 "선택 변경"이벤트 발생

  16. 16

    값 변경 이벤트가 jquery에서 발생하지 않습니다.

  17. 17

    다른 스크립트에서 코 루틴을 발생시키는 이벤트 생성

  18. 18

    pytest가 기본 클래스에서 PASSED 종속성을 승인하지 않으면 파생 클래스에서 SKIPPED 테스트가 발생합니다.

  19. 19

    Highcharts : 다른 차트에서 클릭 이벤트가 발생할 때 차트를 변경하거나 다시 그리는 방법은 무엇입니까?

  20. 20

    클래스 내 속성 변경 이벤트

  21. 21

    구성원이 클러스터에 참여하는 경우 hazelcast #addLocalEntryListener에서 발생한 제거 / 제거 이벤트를 가져옵니다.

  22. 22

    이벤트 발생 후 UITableViewCell에서 텍스트 색상 변경

  23. 23

    이벤트 발생 변수 생성

  24. 24

    MainPage.xaml.cs 생성자에서 다른 클래스의 이벤트에 이벤트 처리기를 등록하는 방법

  25. 25

    <p : selectManyMenu var>에서 ELException 발생 : 'java.lang.String'클래스에 'foo'속성이 없습니다.

  26. 26

    다른 클래스에서 레이블 텍스트 변경

  27. 27

    Qt 다른 클래스에서 레이블 텍스트 변경

  28. 28

    UserControl의 텍스트 변경 이벤트가 Windows 응용 프로그램에서 발생하지 않습니다.

  29. 29

    다른 클래스에서 참조 된 텍스트 필드의 값을 변경하면 오류가 발생합니다.

뜨겁다태그

보관