2016-11-07 9 views
0

私は単純なバインディングをXamarin Listviewで動作させようとしています。 エラーはありません。私はちょうど多分10かそこらの空の行とListViewを取得します。Xamarin Listviewバインドが機能しない

私が使用しているXAMLコードは次のとおりです。

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; } 
} 

背後

<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> 

コードIはXamarinは:(私の友人ではないと信じて始めている。

+0

thi s.BindingContext = this; – Jason

+0

ありがとうございました!私はそれを加えなければならず、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 }, 
      } 
      ); 
     } 
    } 
関連する問題