Closed kiran94 closed 3 years ago
@kiran94 maybe in next version! I will implement more methods to help us format header, rows
@kiran94 But if you don't want to wait to next release, you can format it by manual. Remember that you can replace ExportAndWriteLine() method with your code, do something like this:
var builder = ConsoleTableBuilder.From(GetSampleTableData());
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine(builder.Export());
Console.ResetColor();
FYI, ExportAndWriteLine() is just a wrapper method which help us write less code
public static void ExportAndWriteLine(this ConsoleTableBuilder builder)
{
Console.WriteLine(builder.Export());
}
Hope this help
@minhhungit How is the formatting of header rows going?
@vanillajonathan please use Discussion for asking question Quick reply: there is sample here https://github.com/minhhungit/ConsoleTableExt/issues/8#issuecomment-770279435 You will need to use WithCharMapDefinition and WithHeaderCharMapDefinition
@minhhungit I meant formatting of header rows with colors, since this issue was about color support. So example if the data rows are with gray text then the text in the header rows could be in white text to stand out.
Ahh sorry, I did not notice it, at this time I have no idea how we should support color, will we color table border, cell content... ?
Right now if you really want to color the table, you can use builder.Export()
, it will expose a StringBuilder
You can then foreach line and format it by manual
Anyway, I will reopen this issue. If you have idea, please let me know.
The WithTitle
method could have an overload that takes a second parameter of enum type ConsoleColor
. Or there could be a SetTitleColor
and a SetColumn
color method.
yeah It is possible for those functions
Humm, I checked it, unlucky table is built from StringBuilder ( Export
), we can not inject code to change the color of text in StringBuilder
So I think we have to return new object instead StringBuilder, using a difference type not StringBuilder can cause problem about performance
Right now I just can implement it like this (only support table title, other things like column name, border, cell content are more complex)
Code is pushed to branch https://github.com/minhhungit/ConsoleTableExt/tree/Feature/Coloring Have not merged to master yet
merged, now at version 3.1.2 we can use
.WithTitle("HERE IS YOUR TITLE", ConsoleColor.Yellow, ConsoleColor.DarkGray)
Can we implement Colour Support in the tables?
Making use of something like: