1

我正在使用此代码来查找列表框的最小值,

var low = lowestlow.Items.Cast<object>()
.Select(obj => Convert.ToDouble((decimal.Round(Convert.ToDecimal(obj), 2))));
double llvalue = low.Min();

llvalue我想在列表框中找到最小值的索引lowestlow

我不知道该怎么做。

谁能帮帮我吗。提前致谢

4

4 回答 4

1

尝试lowestlow.Items.IndexOf(lowestlow.Items.FindByValue(llvalue))

于 2012-05-16T06:11:32.887 回答
0
object item =    lowestlow.Items.Min(i => i)
int index = lowestlow.IndexOf(item);

我不知道你在列表中有什么也许你必须强制转换它或定义一个参数(如果列表中有一个对象

于 2012-05-16T06:09:48.470 回答
0

你也可以试试 linq 方法

int minValue = 0;

if (listBox1.Items.Count > 0)
{
minValue = Convert.ToInt32(listBox1.Items[0]);
maxValue = Convert.ToInt32(listBox1.Items[0]);
}
for (int i = 0; i < listBox1.Items.Count; i++)
{
if (minValue > Convert.ToInt32(listBox1.Items[i]))
{
minValue = Convert.ToInt32(listBox1.Items[i]);
} 
}
int LOWEST = listBox1.IndexOf(minValue);
于 2012-05-16T06:13:31.280 回答
0

如果IntegerListBox 中有,可以使用下面的 linq 来获取最低的索引(第一次出现)。

Dim convertedList = ListBox1.Items.Cast(Of String).ToList()
Dim lowest = convertedList.IndexOf(convertedList.Where(Function(x) x <= convertedList.Min()).First())

返回 8 in 和以下数字:

8
2
3
4
5
6
2
10
0 <--
11
12
13
14
于 2012-05-16T06:17:37.543 回答