#c# #object #loops #aspose
#c# #объект #петли #аспозировать #циклы #aspose
Вопрос:
Я использую Aspose.Cells
и я создал диапазон ячеек. Этот диапазон создает range.Value
, который состоит из 2 объектов [строка, столбец]. Теперь я хочу выполнить цикл вокруг этих объектов, который в моем случае представляет собой 1 строку и 33 столбца, причем в каждый столбец вставлена строка ‘day’.
Итак, в основном я хочу выполнить цикл и добавить оператор if, такой как
if (range.Value.ToString() == "Sat")
{
range.ApplyStyle(backgroundColour, flg);
}
Должен ли я каким-то образом зацикливать 33 объекта (столбца)?
Каждое выражение значения диапазона выглядит следующим образом: ((object[,])(range.Value))[0, 0]
whew значение в данном случае равно Fri, а затем ((object[,])(range.Value))[0, 1]
где значение равно Sat и так далее.
Комментарии:
1. коммерческий продукт, который использует object[,] для ячейки, должен быть запрещен : D
Ответ №1:
Вы можете выполнить итерацию по всему диапазону следующим образом:
object[,] rng = (object[,])range.Value;
for (int row = rng.GetLowerBound(0); row <= rng.GetUpperBound(0); row )
{
for (int day = rng.GetLowerBound(1); day <= rng.GetUpperBound(1); day )
{
string dayName = rng[row,day] as string;
}
}