Project Description

Simple HexControl (HexView) is a classic Windows Forms control. It implements a hexadecimal view of bytes with grouping. It's blazing fast, renders only visible frame of a window and supports of painting the individual groups of bytes without the total window being redrawn.

.NET Framework BCL

.NET Framework BCL classes contains standart ByteViewer component in a System.Design assembly in a System.ComponentModel.Design namespace.

System.ComponentModel.Design.ByteViewer be = new System.ComponentModel.Design.ByteViewer();
                be.Font = this.Font;
                be.SetBytes(memory.bytes);

hexcontrol01.PNG hexcontrol02.PNG

Source code

Source code for the project have been released. You can find changeset 89940 here:

http://simplehexviewcontrol.codeplex.com/SourceControl/changeset/changes/89940

Links

https://sourceforge.net/projects/hexviewcontrol/

Features

- Supports vertical and horizontal scrolling
- Supports auto-scroll / auto hide scroll bars
- Renders only visible window frame
- Can update individual byte change
- Supports any type of fonts
- Less intense calculations due to bytes block measurement / rendering

Documentation

HexControl is scrollable composite Windows Forms control. Control logic is divided into presentation logic, model, and some simple code to reflect model changes to presentation control (M-V pattern), skipping controller logic totally, because controller part (events, subscriptions, updates) will be taken totally by the .NET Framework.

In-depth description of implementation, design and architecture:

Rendering

Rendering of the data is controlled by the rendering options you provide for the control. You can change grouping of the bytes by setting HexControl properties in Appearance section:

- BytesPerColumn
- ColumnPerRow

Screenshots

hexview-tiny.PNG

Description

HexControlLibrary 1.0

Release notes

Free for non-commercial use. Copyright (c) Artur Mustafin. Binary and source files are included.

Last edited May 1, 2012 at 5:15 PM by hack2root, version 35