Вот быстрый метод, который вы можете адаптировать по своему вкусу, который должен дать вам логику c, в которой вы нуждаетесь ... фактически, я просто смотрю на стиль линии верхней границы ячейки. Если это «нет», то другие свойства на самом деле не имеют значения.
Вы были на правильном пути, но Borders
является индексатором, и вы задаете ему соответствующую границу и оцениваете свойство LineStyle .
private bool HasTopBorder(Excel.Range r)
{
return ((Excel.XlLineStyle)r.Borders[Excel.XlBordersIndex.xlEdgeTop].LineStyle) !=
Excel.XlLineStyle.xlLineStyleNone;
}
Интересно, что LineStyle
возвращает целое число, следовательно, приведение. Это означает, что вы можете просто выяснить, что такое перечисление для xlLineStyleNone
, и провести это сравнение, но независимо от того, что вы увеличите в эффективности, вы потеряете больше в прозрачности.
И снова, укажите это, если это имеет смысл в вашем код, но я хотел изолировать логи c вам нужно.