【发布时间】:2017-11-24 01:03:22
【问题描述】:
我正在用项目填充 Xamarin.Forms.ListView。
public class LCIDEditor : ContentPage
{
private ListView _lv;
private ObservableCollection<TextCell> _ItemList = new ObservableCollection<TextCell>();
public LCIDEditor()
{
this.Title = "LCIDEditor";
_ItemList.Add(new TextCell { Text = "Englisch", Detail = "1033" });
_ItemList.Add(new TextCell { Text = "Deutsch", Detail = "1031" });
_lv = new ListView();
_lv.ItemsSource = _ItemList;
_lv.ItemTemplate = new DataTemplate(typeof(TextCell));
this.Content = _lv;
}
}
在最好的情况下,我让列表视图在 ListView 中显示类似“Xamarin.Forms.TextCell”的内容,而不是任何真实的文本。
如果我包括
_lv.ItemTemplate = new DataTemplate(typeof(TextCell));
,我什么都看不到,列表视图保持空白。
有人可以告诉我我在这里做错了什么吗? 我通读了文档,但它们没有帮助,而且我看到其他人问同样的问题,但在其他情况下。
我正在尝试处理这个(显然不是这样)简单的例子。
【问题讨论】:
-
从您的项目创建中删除
TextCell。只需_ItemList.Add(new { Text = "Englisch", Detail = "1033" });并将其插入到 ItemTemplate set 命令行之后。 -
@DiegoRafaelSouza 谢谢,但由于各种原因,它不能以这种方式工作。您介意发布整个代码吗?
-
你是对的,对不起。这是因为
ObservableCollection<TextCell>。它必须是ObservableCollection<object>。我将发布整个代码
标签: listview xamarin xamarin.forms