2017-04-21 164 views
1

如何从列表中删除具有小于Tag值的Tag值的列表中的每个元素(图片),在我的示例selectedPicture中。它不允许我使用<=运营商说删除列表中的特定元素


操作“< =”不能应用于类型“对象”和“对象”的操作数。


这里是我做过什么:

pictureBoxList = pictureBoxList 
    .Where(picture => picture.Tag <= selectedPicture.Tag) 
    .ToList(); 
+2

什么类型的标签可以显示类型/类定义? – fubo

+1

“Tag”属性中存储的值的类型是什么? –

+0

我认为这是'Image'类型,附加到它们的'Tag'对象设置为一个整数。 – Luke

回答

4

由于错误表明您不能使用<=比较的对象。您需要根据底层类型来转换Tag属性。例如,如果它是int

.Where(picture => (int)picture.Tag <= (int)selectedPicture.Tag) 
+1

@fubo'Tag'是类型'object',它是类Control的成员:['Control.Tag'](https://msdn.microsoft.com/en-us/ library/system.windows.forms.control.tag(v = vs.110).aspx) –

+0

是的..我的错误。忘记将其转换为int。 TNX –