Skip to content

数据绑定

L edited this page Jan 1, 2018 · 12 revisions

使用内置模板TextCell进行数据绑定

var listView = new Xamarin.Forms.ListView
{
	RowHeight = 40
};
listView.ItemsSource = new TodoItem[] {
	new TodoItem { Name = "Buy 2 pears" },
	new TodoItem { Name = "Buy 3 oranges", Done=true} ,
	new TodoItem { Name = "Buy 5 mangos" },
	new TodoItem { Name = "Buy 7 apples", Done=true },
	new TodoItem { Name = "Buy 8 bananas", Done=true }
};
//TextCell是内置默认模板
listView.ItemTemplate = new DataTemplate(typeof(TextCell));
//绑定TextCell模板的Text属性对应TodoItem的Name
listView.ItemTemplate.SetBinding(TextCell.TextProperty, "Name");
Content = new StackLayout
{
	VerticalOptions = LayoutOptions.FillAndExpand,
	Children = { listView }
};

TodoItem类

public class TodoItem
{
	public string Name { get; set; }
	public bool Done { get; set; }
}

ListView

为ListView添加交互事件ItemSelected

listView.ItemSelected += async (sender, e) => {
	await DisplayAlert("Tapped!", e.SelectedItem + " was tapped.", "OK");
};

示例代码

https://github.com/zLulus/NotePractice/tree/dev3/Xamarin.Forms/XamarinDemo/XamarinDemo/XamarinDemo/Binding

Clone this wiki locally