2012-10-25 2 views
0

저는 인터넷에서이 문제를 해결하기 위해 많은 노력을 기울여 왔으며 적절한 해결책을 찾지 못했습니다. 이 문제입니다 (이 VS2010에서하는 WPF 응용 프로그램입니다) 내가이 클래스가 있다고 가정 :xaml (wpf) (Application.Resources)의 객체 목록 속성에 바인드 목록

public class Airplane 
{ 
    public string AirplaneName{get;set;} 
    public ObservableCollection<People> myPeopleList {get;set;} 
} 
public class People 
{ 
    public string Name{get;set;} 
    public string SeatNumber{get;set;} 
} 

가 지금은 파일 App.xaml에있는 사람들의 목록을 포함하여 비행기 클래스의 인스턴스를 만들려고합니다. 즉, 내 리소스 (Application.Resources)를 만드는 것입니다. 나는이 시도하지만 예외가 얻을 :

<lcl:AirPlaneCollection x:Key="apCollection" > 
      <lcl:Airplane Name="airbus-780" myPeopleList="{StaticResource pList}" > 
</lcl:AirPlaneCollection> 
     <lcl:PeopleCollection x:Key="pList"> 
      <lcl:People Name="name1" SeatNumber="1"/> 
      <lcl:People Name="name2" SeatNumber="2"/> 
     </lcl:PeopleCollection> 

AirPlaneCollection 및 PeopleCollection 내가 그 자원 (Application.Current.Resources [ "appCollection을"] 사용하려고하면 ObservableCollection<Airplane>ObservableCollection<Poeple> 에서 상속 단순한 클래스가 컴파일 할 것입니다 하지만 런타임에 예외가 발생합니다. 내 TreeView DataTemplate 잘 수행하고 있기 때문에 일반 목록 (추가 요법.) 코드 숨김 클래스를 인스턴스화합니다. 완벽하게 작동합니다. 내가 뭘 잘못하고 있습니까? 감사합니다 고급.

+2

어떤 예외가 있습니까? –

+0

" 'System.Windows.Markup.StaticResourceHolder'에 값을 제공하면 예외가 발생했습니다." –

답변

0

해결책을 찾았습니다 !! A pplication.Resources "pList"는 "apCollection"위에 선언되어야합니다. 아마 선언 순서가 중요합니다.