Serilog.Sinks.RichTextBoxEx.Wpf
1.1.0.1
Requires NuGet 3.3 or higher.
dotnet add package Serilog.Sinks.RichTextBoxEx.Wpf --version 1.1.0.1
NuGet\Install-Package Serilog.Sinks.RichTextBoxEx.Wpf -Version 1.1.0.1
<PackageReference Include="Serilog.Sinks.RichTextBoxEx.Wpf" Version="1.1.0.1" />
paket add Serilog.Sinks.RichTextBoxEx.Wpf --version 1.1.0.1
#r "nuget: Serilog.Sinks.RichTextBoxEx.Wpf, 1.1.0.1"
// Install Serilog.Sinks.RichTextBoxEx.Wpf as a Cake Addin #addin nuget:?package=Serilog.Sinks.RichTextBoxEx.Wpf&version=1.1.0.1 // Install Serilog.Sinks.RichTextBoxEx.Wpf as a Cake Tool #tool nuget:?package=Serilog.Sinks.RichTextBoxEx.Wpf&version=1.1.0.1
README.md |
---|
<div align="center">
<img src="asset/serilog-sink-nuget.png" alt="Serilog.Sinks.RichTextBox.Wpf" width="100" />
</div>
<h1 align="center">Serilog.Sinks.RichTextBoxEx.Wpf</h1> <div align="center">
A Serilog sink that writes log events to any WPF RichTextBox control with coloring and custom theme support.
You can use any class in Serilog.Sinks.RichTextBoxEx.Wpf
instead of internal
class.
</div>
Give a Star! β
If you like or are using this project please give it a star. Thanks!
Getting started π
Install the Serilog.Sinks.RichTextBox.Wpf package from NuGet:
Install-Package Serilog.Sinks.RichTextBox.Wpf -Prerelease
Declare your RichTextBox control and give it a name that you can reference it from the code-behind. e.g.:
<Window (...)>
<RichTextBox
x:Name="MyRichTextBox"
Background="Black"
Foreground="LightGray"
FontFamily="Cascadia Mono, Consolas, Courier New, monospace"
VerticalScrollBarVisibility="Auto"
/>
</Window>
Then enable the sink using WriteTo.RichTextBox()
:
Log.Logger = new LoggerConfiguration()
.WriteTo.RichTextBox(MyRichTextBox)
.CreateLogger();
Log.Information("Hello, world!");
Log events will be written to the RichTextBox
control:
[11:54:36 INF] Hello, world!
Themes
The sink will colorize output by default:
Themes can be specified when configuring the sink:
.WriteTo.RichTextBox(MyRichTextBox, theme: RichTextBoxConsoleTheme.Grayscale)
The following built-in themes are available at this time:
Theme | Description |
---|---|
RichTextBoxTheme.None |
No styling. Uses default styles applied to the RichTextBox control |
RichTextBoxConsoleTheme.Literate |
Styled to replicate the default theme of Serilog.Sinks.Console; This is the default when no theme is specified |
RichTextBoxConsoleTheme.Grayscale |
A theme using only shades of gray, white, and black |
RichTextBoxConsoleTheme.Colored |
A theme based on the original Serilog.Sinks.ColoredConsole sink |
Adding a new theme is straightforward; examples can be found in the RichTextBoxConsoleThemes
class.
Output templates
The format of events to the RichTextBox can be modified using the outputTemplate
configuration parameter:
.WriteTo.RichTextBox(MyRichTextBox,
outputTemplate: "[{Timestamp:HH:mm:ss} {Level:u3}] {Message:lj}{NewLine}{Exception}")
The default template, shown in the example above, uses built-in properties like Timestamp
and Level
. Properties from events, including those attached using enrichers, can also appear in the output template.
Release History
Click on the Releases tab on GitHub.
Copyright Β© 2021-2023 C. Augusto Proiete & Contributors - Provided under the Apache License, Version 2.0.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0-windows7.0 is compatible. net6.0-windows was computed. net6.0-windows7.0 is compatible. net7.0-windows was computed. net7.0-windows7.0 is compatible. net8.0-windows was computed. net8.0-windows7.0 is compatible. |
.NET Framework | net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Serilog.Sinks.RichTextBoxEx.Wpf:
Repository | Stars |
---|---|
babalae/better-genshin-impact
📦BetterGI · ζ΄ε₯½ηεη₯ - θͺε¨ζΎε | θͺε¨ε§ζ
| ε
¨θͺε¨ιι±Ό(AI) | ε
¨θͺε¨δΈε£ε¬ε€ | θͺε¨δΌζ¨ | θͺε¨ε·ζ¬ | θͺε¨ιι - UI Automation Testing Tools For Genshin Impact
|