Xamarin Listview绑定不起作用

时间:2016-11-07 03:02:55

标签: listview xamarin

我试图让简单的绑定工作在Xamarin Listview上没有任何运气。 我没有收到任何错误。我只得到一个可能有10行左右的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; }
}

我开始相信Xamarin不是我的朋友:(。

1 个答案:

答案 0 :(得分: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 },
            }
            );
        }
    }