我试图使用一个属性来防止列表的第一个值小于零:
    private List<int> _MyList = new List<int>();
    public List<int> MyList
    {
        get
        {
            return _MyList;
        }
        set
        {
            if (value[0] < 0)
            {
                value[0] = 0;
            }
            _MyList = value;
        }
    }然后在我的代码中添加:
if(ButtonPressed)
{
      MyList[0] -= 1;
}不过,我可以按下按钮,并通过零来减少值。
我遗漏了什么?
发布于 2014-04-08 14:36:27
您永远不要输入该属性,它将用于设置实际列表的值,而不是列表元素的值。你最好的选择是写一个方法来减少项目的数量。
void AdjustCount(int value)
{
    if(MyList[0] + value >= 0)
        MyList[0] += value
}
if(ButtonPressed)
{
   AdjustCount(-1);
}https://stackoverflow.com/questions/22940165
复制相似问题