Рекомендации по управлению шестнадцатеричным просмотром для Windows.Forms?

Мне нужно отображать содержимое в Hex View, как это из WinHex

Offset      0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F
00000000   EF BB BF 0D 0A 4D 69 63  72 6F 73 6F 66 74 20 56   ..Microsoft V
00000010   69 73 75 61 6C 20 53 74  75 64 69 6F 20 53 6F 6C   isual Studio Sol
00000020   75 74 69 6F 6E 20 46 69  6C 65 2C 20 46 6F 72 6D   ution File, Form
00000030   61 74 20 56 65 72 73 69  6F 6E 20 31 30 2E 30 30   at Version 10.00
00000040   0D 0A 23 20 56 69 73 75  61 6C 20 53 74 75 64 69   ..# Visual Studi
00000050   6F 20 32 30 30 38 0D 0A  50 72 6F 6A 65 63 74 28   o 2008..Project(
00000060   22 7B 46 31 38 34 42 30  38 46 2D 43 38 31 43 2D   "{F184B08F-C81C-
00000070   34 35 46 36 2D 41 35 37  46 2D 35 41 42 44 39 39   45F6-A57F-5ABD99

Пожалуйста, порекомендуйте элемент управления. Спасибо.

Ответ 1

Я всегда использовал http://sourceforge.net/projects/hexbox/, который имеет элемент управления HexEditor, но может также использоваться в режиме только для чтения.

Ответ 2

Существует ByteViewer Control, непосредственно доступный в .NET Framework. Вот как вы можете использовать его в примере приложения Winforms С# (обратите внимание: вам нужно ссылаться на сборку System.Design):

public Form1()
{
    InitializeComponent();
    ...
    ByteViewer bv = new ByteViewer();
    bv.SetFile(@"c:\windows\notepad.exe"); // or SetBytes
    Controls.Add(bv);
}

И вот как это выглядит:

enter image description here

Ответ 3

Вы можете использовать элемент управления Wpf HexEditor на GitHub/Nuget. Может использоваться в приложении WPF или WinForm.

Быстрый, полностью настраиваемый пользовательский элемент управления Wpf для редактирования файла или потока в шестнадцатеричном формате.

https://github.com/abbaye/WPFHexEditorControl

<!-- XAML -->
<Control:HexaEditor/>
<Control:HexaEditor Width="NaN" Height="NaN"/>
<Control:HexaEditor Width="Auto" Height="Auto"/>
<Control:HexaEditor FileName={Binding FileNamePath} Width="Auto" Height="Auto"/>

Image1

Ответ 4

Вы можете попробовать мой проект Simple HexView Control в

http://simplehexviewcontrol.codeplex.com/

Simple HexControl (HexView) - это классический элемент управления Windows Forms. Он реализует шестнадцатеричное представление байтов с группировкой. Он быстро вспыхивает, отображает только видимый кадр окна и поддерживает рисование отдельных групп байтов без полного перерисования окна.

enter image description hereenter image description here