이것은 아마도 매우 어리석은 질문이지만, 나는 그 사실을 이해할 수 없다.인덱서 바인딩
class ViewModel
{
public Row CurrentRow{get;}
public Accessor CurrentAccessor {get;}
}
가 어떻게 XAML에서 바인딩 CurrentRow[CurrentAccessor]
을 정의 할 수 있습니다 : 나는이 같은 뷰 - 모델이있는 경우
class Accessor
{
}
class Row : INotifyCollectionChanged
{
public object this[Accessor index] {get;}
}
그리고 : 나는이 두 클래스로 표시되는 데이터 구조를 가지고 있다고 가정? {Binding Path=CurrentRow[{Binding Path=CurrentAccessor}]}
을 사용해 보았지만이 방법은 효과가없는 것 같습니다.
업데이트 : 나는 행 클래스는 너무 값이 저장된 경우
public object WrappedProperty { get{return CurrentRow[CurrentAccessor];}}
그 이후 작동하지 않을 것이 더 업데이트가 없을 것 같은 간단한 속성 래퍼를 사용하여, INotifyCollectionChanged
인터페이스를 구현하는 모음입니다 지적한다 CurrentRow [CurrentAccessor]가 변경됩니다.
+1하지만 액세서로 'var accessor = values [1]'이 아닐 것입니다. (인덱스 1은 인덱스 0이 아닙니다.) – Blachshma
@Blachshma 정확히! 이제 내가 실제로 테스트하지 않았다는 것을 알 수있다 :-) – Clemens