• Stars
    star
    814
  • Rank 56,027 (Top 2 %)
  • Language
    C#
  • License
    Apache License 2.0
  • Created almost 9 years ago
  • Updated 11 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Wpf Hexeditor is a powerful and fully customisable user control for editing file or stream as hexadecimal, decimal and binary. Can be used in Wpf or WinForm application

NuGet NetFramework NetFramework NetFramework License

Wpf Hexeditor is a powerful and fully customisable user control for editing file or stream as hexadecimal, decimal and binary.

You can use it very easily in Wpf or WinForm application. Download the code and test the Wpf (C#, VB.NET) and WinForm (C#) samples.

The control are localized in English, French, Russian, Polish, Portuguese and Chinese

โญ You want to say thank or just like project ?

Hexeditor control is totaly free and can be used in all project you want like open source and commercial applications. I make it in my free time and a few colaborators help me when they can... Please hit the โญ๏ธ button or fork and I will be very happy ;) I accept help contribution...

๐Ÿ–ผ Screenshots

Sample with standard ASCII character table example

Sample with custom character table (TBL) on SNES Final Fantasy II US example

Sample use ByteShiftLeft and BytePerLine properties with custom TBL for edit fixed lenght table... example

Sample use of find and find/replace dialog... example

โญ Sample use of BarChart representation of the data ... example

โญ Sample use of control in AvalonDock ...

example

โญ Sample use of CustomBackgroundBlock in the "Find difference bytes sample" ... example

๐Ÿงพ What is TBL (custom character table)

The TBL are small plaintext .tbl files that link every hexadecimal value with a character, which proves most useful when reading and changing text data. Wpf HexEditor support .tbl and you can define your custom character table as you want.

Unicode TBL are supported. For use put value at the right of equal (=) like this (0401=ๅกž่ฅฟๅฐ”) or (42=ะ”) in you plaintext .tbl file.

example

๐Ÿ›’ Somes features

โญ = New features

  • โญ AvalonDock support
  • โญ Edit in hexadecimal, decimal and binary
  • โญ Edit in 8bit, 16bit and 32bit
  • โญ Edit in LoHi or HiLo
  • โญ View as BarChart (see in screenshot. will evoluate in future)
  • Find and Find/Replace dialog
  • Append byte at end of file
  • Include HexBox, an Hexadecimal TextBox with spinner
  • Fill selection (or another array) with byte.
  • Support of common key in window like CTRL+C, CTRL+V, CTRL+Z, CTRL+Y, CTRL+A, ESC...
  • Copy to clipboard as code like C#, VB.Net, C, Java, F# ...
  • Support custom .TBL character table file insted of default ASCII.
  • Unlimited Undo / Redo
  • Finds methods (FindFirst, FindNext, FindAll, FindLast, FindSelection) and overload for (string, byte[])
  • Replace methods (ReplaceFirst, ReplaceNext, ReplaceAll) and overload for (string, byte[])
  • Highlight byte with somes find methods
  • Bookmark
  • Group byte in block of 2,4,6,8 bytes...
  • Show data as hexadecimal or decimal
  • Possibility to view only a part of file/stream in editor and dont loose anychange when used it (AllowVisualByteAdress...)
  • Zoom / UnZoom hexeditor content (50% to 200%)
  • Positility to show or not the bytes are deleted.
  • Customize the color of bytes, TBL, background, header, and much more ...
  • ...

๐Ÿ‘ How to use

Add a reference to WPFHexaEditor.dll from your project, then add the following namespace to your XAML:

xmlns:control="clr-namespace:WpfHexaEditor;assembly=WPFHexaEditor"

Insert the control like this in your XAML...:

<control:HexEditor/>
<control:HexEditor Width="NaN" Height="NaN"/>
<control:HexEditor Width="Auto" Height="Auto"/>
<control:HexEditor FileName="{Binding FileNamePath}" Width="Auto" Height="Auto"/>

โœจ Wpf HexEditor user control, by Derek Tremblay ([email protected]) coded for your fun! ๐Ÿ˜Š๐ŸคŸ