Использование XlLineStyle в качестве объекта C# - PullRequest
0 голосов
/ 29 апреля 2020

У меня есть код, который рисует aws строку вокруг ячейки на листе Excel в зависимости от значения в строке, border:

    if (border != null)
    {
        //can be one or serval of below
        if (border.Contains("Bottom"))
            workSheet.Cells[i, j].Borders[Excel.XlBordersIndex.xlEdgeBottom].LineStyle = XlLineStyle.xlContinuous;
        if (border.Contains("Right"))
            workSheet.Cells[i, j].Borders[Excel.XlBordersIndex.xlEdgeRight].LineStyle = XlLineStyle.xlContinuous;
        if (border.Contains("Left"))
            workSheet.Cells[i, j].Borders[Excel.XlBordersIndex.xlEdgeLeft].LineStyle = XlLineStyle.xlContinuous;
        if (border.Contains("Top"))
            workSheet.Cells[i, j].Borders[Excel.XlBordersIndex.xlEdgeTop].LineStyle = XlLineStyle.xlContinuous;
    }

Теперь я хочу добавить новую переменную , string linetype, которая определяет строку:

        if (linetype == "Double")
            lineobject = XlLineStyle.xlDouble;

Так что я могу написать:

workSheet.Cells[i, j].Borders[Excel.XlBordersIndex.xlEdgeTop].LineStyle = lineobject;

Добавить строку, конечно, легко. Но я не знаю, как я могу определить lineobject, чтобы позже я мог использовать определенный тип линии c, не переписывая первую часть кода здесь для каждого типа строки, которую я хотел бы использовать для всех четыре местоположения линии.

1 Ответ

1 голос
/ 29 апреля 2020

AFAIK: нет способа определить пользовательскую границу (в пользовательском интерфейсе Excel вам также необходимо отдельно выбрать линию, цвет и ширину), но LineStyle / lineobject можно легко присвоить некоторой переменной как

var cell = worksheet.Cells[2, 2];
var border = cell.Borders;

var myborderstyle = XlLineStyle.xlDash;
var myborderweight = 4d;

border.LineStyle = myborderstyle;  <-- set specific linetype
border.Weight = myborderweight;    <-- set specific width
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...