【问题标题】:I'm getting 'Non-public member' when adding items in List - Xamarin在列表中添加项目时我得到“非公共成员” - Xamarin
【发布时间】:2018-01-20 21:21:19
【问题描述】:

我有一个类设备

public class Devices
{
    public string nombre { get; set; }
    public string valueY { get; set; }
    public string valueZ { get; set; }

}

还有一个功能

private void fillData(JArray arrData)
    {

        var data = new List<Devices>();

        for(int i = 0; i<arrData.Count; i++)
        {
            data.Add(new Devices
            {
                nombre = "X",
                valueY = "Y",
                valueZ = "Z"
            });
        }

        list.ItemsSource = data;
    }

检查“数据”时,我只有“非公共成员”而不是实际值。

请帮忙。

【问题讨论】:

  • 这是编译错误还是运行时异常?哪个特定行导致错误,确切的错误消息是什么?
  • 运行时异常
  • 它在列表中显示了这样的框架
  • 你能用 .NET 集合替换 JArray 吗?
  • 我改成 ArrayList,但它不识别它,即使使用 .NET 集合

标签: c# xamarin xamarin.forms


【解决方案1】:

显然,arrData.Count 为 0,并且循环从未迭代。检查arrData。如果您为循环设置 const 限制,它将添加项目。

    for(int i = 0; i < 1; i++)
    {
        data.Add(new Devices
        {
            nombre = "X",
            valueY = "Y",
            valueZ = "Z"
        });
    } 

【讨论】:

  • 感谢您的回答。但是,我有 5 个设备,循环迭代了 5 次,在“数据”中添加了 5 个具有“非公共成员”值的项目。
【解决方案2】:

我认为您正在尝试从ViewModel 访问dataNon-public member 仅表示 access modifier 不公开。在您的情况下,它是private。尝试将其更改为公开。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-01
    • 1970-01-01
    • 2015-06-21
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    相关资源
    最近更新 更多