首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据来自web服务Xamarin表单的数据动态表示标签

根据来自web服务Xamarin表单的数据动态表示标签
EN

Stack Overflow用户
提问于 2019-04-19 15:16:50
回答 1查看 360关注 0票数 1

我试图渲染一个框架内的信息列表来自数据库的信息有两个部分,即“描述”:“值”,所以列表中的行使I组的描述和值,有些可能没有

那么,谁能帮助我如何根据我从服务中获得的数据将标注添加到网格或堆栈中,因为它有时可能是3,有时可能是5,创建标注和绑定它们将是一项静态工作

EN

回答 1

Stack Overflow用户

发布于 2019-04-21 06:22:53

如果你可以使用xamarin forms3.5或更高版本,有一个非常干净的答案,BindableLayout。

Xaml文件

代码语言:javascript
复制
<ListView
            x:Name="listView"
            HasUnevenRows="True"
            ItemsSource="{Binding Category}">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <ViewCell>
                        <StackLayout>
                            <Label Text="{Binding Name}" TextColor="Blue" />
                            <StackLayout BindableLayout.ItemsSource="{Binding users}">
                                <BindableLayout.ItemTemplate>
                                    <DataTemplate>
                                        <Label Text="{Binding Name}" />
                                    </DataTemplate>
                                </BindableLayout.ItemTemplate>
                            </StackLayout>
                        </StackLayout>
                    </ViewCell>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>

在我的ViewModel

代码语言:javascript
复制
public class DynamicSwitchViewModel:BaseViewModel
    {
        public DynamicSwitchViewModel(ContentPage view):base(view)
        {
            ObservableCollection<User> users1 = new ObservableCollection<User>();
            users1.Add(new User() { Name = "karan3" });
            users1.Add(new User() { Name = "karan4" });
            users1.Add(new User() { Name = "karan5" });
            ObservableCollection<User> users2 = new ObservableCollection<User>();
            users2.Add(new User() { Name = "karan1" });
            users2.Add(new User() { Name = "karan2" });
            users2.Add(new User() { Name = "karan3" });
            users2.Add(new User() { Name = "karan4" });
            users2.Add(new User() { Name = "karan5" });
            ObservableCollection<User> users3 = new ObservableCollection<User>();
            users3.Add(new User() { Name = "karan1" });
            users3.Add(new User() { Name = "karan2" });
            users3.Add(new User() { Name = "karan3" });
            Category = new ObservableCollection<Category>();
            Category.Add(new Category() { Name = "1",users=users1 });
            Category.Add(new Category() { Name = "2",users=users2 });
            Category.Add(new Category() { Name = "3",users=users3 });


        }
        private ObservableCollection<Category> category;
        public ObservableCollection<Category> Category
        {
            get { return category; }
            set { SetProperty(ref category, value); }
        }

    }
    public class Category
    {
        public  ObservableCollection<User> users { get; set; }
        public string Name { get; set; }
    }
    public class User
    {
        public string Name { get; set; }
    }

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55758023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档