2009-11-15 7 views
3
내가 컨트롤의 컬렉션에 바인딩하기 위해 노력하고있어

의 컬렉션에 바인딩 ItemsControl에 동적으로 생성합니다WPF 컨트롤

<ItemsControl ItemsSource="{Binding CustomFields}"> 

그리고 코드 :

public ObservableCollection<Control> CustomFields 
    { 
     get 
     { 
      return GetCustomFields(); 
     } 
    } 

Getcustomfields이처럼 일부 컨트롤을 생성 ComboBox, 텍스트 상자 등. 바인딩이 작동하는 것처럼 보이지만 창에 내 컨트롤이 표시되지 않습니다. 아마도 itemscontrol에 datatemplate이 필요하기 때문일 것입니다. 내 질문은 어떤 종류의 데이터 형식이 필요한가요? 어떤 도움

감사

답변

5

사용과 같은 XAML와 같은 다음의 특성 : 어쩌면 문제는 다른 곳에서 오는

public ObservableCollection<UIElement> Controls 
{ 
    get 
    { 
     var collection = new ObservableCollection<UIElement>(); 
     collection.Add(new Button { Content = "Hello world" }); 

     return collection; 
    } 
} 

이 ... 당신이 우리에게 재현하는 데 필요한 코드를 줄 수 문제?

+1

감사합니다. ObservableCollection을 컨트롤 대신 UIElement 유형으로 변경하면됩니다. 나는 아직 미안하다. –