2016-11-07 4 views
0

행운없이 Xamarin Listview에서 작동하도록 간단한 바인딩을 얻으려고합니다. 오류가 발생하지 않습니다. 나는 ListView를 10 개 정도의 빈 행으로 얻는다.Xamarin Listview 바인딩이 작동하지 않습니다.

다음은 내가 사용하는 XAML 코드입니다.

<ContentView.Content > 
<StackLayout>  
    <ListView x:Name="listView" ItemsSource="{Binding myItems}" > 
    <ListView.ItemTemplate> 
     <DataTemplate> 

     <ViewCell> 
      <StackLayout> 
      <Label Text="{Binding TName}"/> 
      <Label Text ="{Binding Num, StringFormat='${0}'}"/> 
      </StackLayout>       
     </ViewCell> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
    </ListView> 
</StackLayout> 

나는 자 마린을 믿기 시작 해요

public partial class TestView : ContentView 
{ 
    public TestView() 
    { 
     InitializeComponent(); 
     listView.BindingContext = this; 
    } 

    public static ObservableCollection<Test> myItems 
    { 
     get 
     { 
      return new ObservableCollection<Test>(new[] 
      { 
       new Test() { TName = "Item 1", Num = 1 }, 
       new Test() { TName = "Item 2", Num = 2 }, 
       new Test() { TName = "Item 3", Num = 3 }, 
       new Test() { TName = "Item 4", Num = 4 }, 
      }); 
     } 
    } 
} 

public class Test 
{ 
    public string TName { get; set; } 
    public int Num { get; set; } 
} 

뒤에

코드는 내 친구 :(. 다음과 같이

+0

thi s.BindingContext = this; – Jason

+0

고맙습니다 Jason! 나는 그것을 추가해야하고 myItems에서 정적을 제거했다. 답으로 입력하면 바로 표시하겠습니다. – jbassking10

답변

0

변경, 그것은

을 작동하지 않습니다
public ObservableCollection<Test> myItems 
    { 
     get 
     { 
      return new ObservableCollection<Test>(new[] 
      { 
      new Test() { TName = "Item 1", Num = 1 }, 
      new Test() { TName = "Item 2", Num = 2 }, 
      new Test() { TName = "Item 3", Num = 3 }, 
      new Test() { TName = "Item 4", Num = 4 }, 
      } 
      ); 
     } 
    } 
관련 문제