내 친구,(대화 창에서) 소유 윈도우의 컨트롤 속성에 바인딩하는 방법?
i WPF에서 해결할 수없는 문제가 있습니다. 두 Windows, Mainwindow 및 Window1 있습니다. 내 자식 창의 ListView를 부모 윈도우의 컨트롤 속성에 바인딩하고 싶습니다. 구체적으로 :
MainWindow를은 또한 아래로,
<local:MyControl x:Name="View"/>
을 XAML에서 선언 된 컨트롤이 난이 '보기', 'Session.Events'의 공용 속성 (관찰 가능한 컬렉션에 의해 공급됩니다 얻을 목록보기) 잘 작동하지만 지금은 그런 방식으로 MainWindow를에서 양산 번째 윈도우가
<ListView ItemsSource="{Binding ElementName=View, Path=Session.Events}"/>
:
Window1 MyWin1 = new Window1();
MyWin1.Owner = this;
MyWin1.ShowDialog();
을
그리고이 두 번째 창에는 내 '보기'컨트롤로 먹이를 입력해야하는 ListView가 있습니다. 나는 바인딩을 통해 그것을하고 싶지만 내 치아를 물다. 내가 시험해 보는대로 작동하지 않습니다. 코드 숨김을 통해 작업 버전을 가지고 ...
Window1 Parent = (Window1)this.Owner;
MyListView.ItemsSource = Parent.CCView.Session.Events;
그러나 나는 XAML에서 바인딩을 수행하고 여분의 코드를 저장하는 것이 좋습니다. 또한 바인딩이 더 잘 이해되는 데 도움이되기를 바랍니다. 어떤 경우에는 여전히 미스테리입니다.
, 당신에게 너무 많은 내 안부 감사폴
안녕 FLQ, 감사합니다! 나는 그것을 포함 시켰지 만, 어떻게 Window1에서 실제 바인딩을 연습합니까? ItemsSource = "{바인딩 ElementName =보기, 경로 = Session.Events}"시도하고 다른 것들을 잔뜩하지만 그것을 얻을 수 없습니다 ... – hpalu
흠, 당신은 DataContext를 사용하지 않는 것 같습니다? 그래도 바인딩이 무엇을 의미하는지 알 수 있습니다. 예를 들어 당신의 DataContext는 Session이고 바인딩은'{Binding Events}'입니다 - DataContext는 논리적 트리 – flq
: D의 모든 것에서 상속받습니다. – hpalu