c# openxml excel stylesheet border error -


i making stylesheet excel sheet borders cells, , works long have no more 2 borders. when add third border, however, excel tells me there error xml when open it, when third border has right , left border. when it's top , bottom border there's no problem.

why getting error border index 2 , when has right , left border?

i'll put full code style sheet method below, specific part i'm having trouble here:

                //this border index 2 (third border)                 new documentformat.openxml.spreadsheet.border(                        //error caused section                     //if leave right , left border out there no error                                                                            //also no error if whole border border index 0 or 1                     new documentformat.openxml.spreadsheet.rightborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     new documentformat.openxml.spreadsheet.leftborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     // end section error caused                      //top , bottom borders work fine                     new documentformat.openxml.spreadsheet.topborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     new documentformat.openxml.spreadsheet.bottomborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     new diagonalborder()                 )//, 

below full code generating stylesheet

    private stylesheet generatestylesheet()     {         return new stylesheet(               new documentformat.openxml.spreadsheet.fonts(                 new documentformat.openxml.spreadsheet.font(                                                               // index 0 - default font.                     new fontsize() { val = 11 },                     new documentformat.openxml.spreadsheet.color() { rgb = new hexbinaryvalue() { value = "000000" } },                     new fontname() { val = "calibri" }),                 new documentformat.openxml.spreadsheet.font(                                                               // index 1 - bold font.                     new bold(),                     new fontsize() { val = 11 },                     new documentformat.openxml.spreadsheet.color() { rgb = new hexbinaryvalue() { value = "ffffff" } },                     new fontname() { val = "calibri" }),                 new documentformat.openxml.spreadsheet.font(                                                               // index 2 - italic font.                     new italic(),                     new fontsize() { val = 11 },                     new documentformat.openxml.spreadsheet.color() { rgb = new hexbinaryvalue() { value = "000000" } },                     new fontname() { val = "calibri" }),                 new documentformat.openxml.spreadsheet.font(                                                               // index 3 - times roman font. 16 size                     new fontsize() { val = 16 },                     new documentformat.openxml.spreadsheet.color() { rgb = new hexbinaryvalue() { value = "000000" } },                     new fontname() { val = "times new roman" })             ),             new fills(                 new documentformat.openxml.spreadsheet.fill(                                                           // index 0 - default fill.                     new documentformat.openxml.spreadsheet.patternfill() { patterntype = patternvalues.none }),                 new documentformat.openxml.spreadsheet.fill(                                                           // index 0 - default fill.                     new documentformat.openxml.spreadsheet.patternfill() { patterntype = patternvalues.none }),                 new documentformat.openxml.spreadsheet.fill(                                                           // index 2 - gray fill.                     new documentformat.openxml.spreadsheet.patternfill(                         new documentformat.openxml.spreadsheet.foregroundcolor() { rgb = new hexbinaryvalue() { value = "0000ff" } }                     )                     { patterntype = patternvalues.solid })             ),             new documentformat.openxml.spreadsheet.borders(                 new documentformat.openxml.spreadsheet.border(                                                         // index 0 - default border.                     new documentformat.openxml.spreadsheet.leftborder(),                     new documentformat.openxml.spreadsheet.rightborder(),                     new documentformat.openxml.spreadsheet.topborder(),                     new documentformat.openxml.spreadsheet.bottomborder(),                     new diagonalborder()),                 new documentformat.openxml.spreadsheet.border(                                                         // index 1 - applies left, right, top, bottom border cell                     new documentformat.openxml.spreadsheet.topborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thin },                     new documentformat.openxml.spreadsheet.bottomborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     new diagonalborder()                 ),                 new documentformat.openxml.spreadsheet.border(                                                         // index 1 - applies left, right, top, bottom border cell                     new documentformat.openxml.spreadsheet.rightborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     new documentformat.openxml.spreadsheet.leftborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     new documentformat.openxml.spreadsheet.topborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     new documentformat.openxml.spreadsheet.bottomborder(                         new documentformat.openxml.spreadsheet.color() { auto = true }                     )                     { style = borderstylevalues.thick },                     new diagonalborder()                 )//,                  //new documentformat.openxml.spreadsheet.border(                                                         // index 1 - applies left, right, top, bottom border cell                  //    new documentformat.openxml.spreadsheet.topborder(                  //        new documentformat.openxml.spreadsheet.color() { auto = true }                  //    )                  //    { style = borderstylevalues.thick },                  //    new documentformat.openxml.spreadsheet.bottomborder(                  //        new documentformat.openxml.spreadsheet.color() { auto = true }                  //    )                  //    { style = borderstylevalues.thick },                  //    new documentformat.openxml.spreadsheet.rightborder(                  //        new documentformat.openxml.spreadsheet.color() { auto = true }                  //    )                  //    { style = borderstylevalues.thick },                  //    new diagonalborder()                  //)              ),             new cellformats(             //new cellformat() { fontid = 1, fillid = 1, borderid = 0 }//debug                new cellformat() { fontid = 0, fillid = 0, borderid = 0 },                          // index 0 - default cell style.  if cell not have style index applied use style combination instead             new cellformat(                 new alignment()                 { horizontal = horizontalalignmentvalues.center, vertical = verticalalignmentvalues.center }                 )             { fontid = 1, fillid = 2, borderid = 0, applyfont = true }             ),             new cellformat(                 new alignment()                 {                     horizontal = horizontalalignmentvalues.right,                     vertical = verticalalignmentvalues.bottom                 }                 )                 {                     fontid = 0, fillid = 1, borderid = 0                 },             new cellformat(                 new alignment()                 {                     horizontal = horizontalalignmentvalues.right,                     vertical = verticalalignmentvalues.bottom                 }             )             {                 fontid = 1, fillid = 0, borderid = 2             }         ); // return     } 

the border elements defined sequence , therefore have explicit order. leftborder has come before rightborder need reverse order in code:

new documentformat.openxml.spreadsheet.leftborder(     new documentformat.openxml.spreadsheet.color() { auto = true } ) { style = borderstylevalues.thick }, new documentformat.openxml.spreadsheet.rightborder(     new documentformat.openxml.spreadsheet.color() { auto = true } ) { style = borderstylevalues.thick }, 

Comments

Popular posts from this blog

javascript - Create a stacked percentage column -

Optimising Firebase database by automatically overwriting data -

javascript - Angular UI-Grid customTemplate directive causing rows to load slowly/? -