DisplayMode 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
定义用于指示 ByteViewer 所使用的显示模式的标识符。
public enum class DisplayMode
public enum DisplayMode
type DisplayMode =
Public Enum DisplayMode
- 继承
字段
Ansi | 2 | ANSI 格式的显示。 |
Auto | 4 | 自动选择显示模式的显示模式。 在此模式下,将对字节进行检查,以确定它们是否为十六进制或可打印的格式。 如果字节为十六进制格式,则将选择 Hexdump 模式。 如果字符匹配可打印的字符集,则运行一项测试,以自动选择 Ansi 或 Unicode 显示模式。 |
Hexdump | 1 | 十六进制格式的显示。 |
Unicode | 3 | Unicode 格式的显示。 |
示例
以下示例演示如何使用 DisplayMode 标识符。 此代码示例是为 ByteViewer 类提供的一个更大示例的一部分。
#using <System.Windows.Forms.dll>
#using <System.dll>
#using <System.Drawing.dll>
#using <System.Design.dll>
using namespace System;
using namespace System::Drawing;
using namespace System::Collections;
using namespace System::ComponentModel;
using namespace System::ComponentModel::Design;
using namespace System::Windows::Forms;
public ref class ByteViewerForm: public System::Windows::Forms::Form
{
private:
System::Windows::Forms::Button^ button1;
System::Windows::Forms::Button^ button2;
System::ComponentModel::Design::ByteViewer^ byteviewer;
public:
ByteViewerForm()
{
// Initialize the controls other than the ByteViewer.
InitializeForm();
// Initialize the ByteViewer.
byteviewer = gcnew ByteViewer;
byteviewer->Location = Point(8,46);
byteviewer->Size = System::Drawing::Size( 600, 338 );
byteviewer->Anchor = static_cast<AnchorStyles>(AnchorStyles::Left | AnchorStyles::Bottom | AnchorStyles::Top);
byteviewer->SetBytes( (array<Byte>^)Array::CreateInstance( Byte::typeid, 0 ) );
this->Controls->Add( byteviewer );
}
private:
// Show a file selection dialog and cues the byte viewer to
// load the data in a selected file.
void loadBytesFromFile( Object^ /*sender*/, EventArgs^ /*e*/ )
{
OpenFileDialog^ ofd = gcnew OpenFileDialog;
if ( ofd->ShowDialog() != ::DialogResult::OK )
return;
byteviewer->SetFile( ofd->FileName );
}
// Clear the bytes in the byte viewer.
void clearBytes( Object^ /*sender*/, EventArgs^ /*e*/ )
{
byteviewer->SetBytes( (array<Byte>^)Array::CreateInstance( Byte::typeid, 0 ) );
}
// Changes the display mode of the byte viewer according to the
// Text property of the RadioButton sender control.
void changeByteMode( Object^ sender, EventArgs^ /*e*/ )
{
System::Windows::Forms::RadioButton^ rbutton = dynamic_cast<System::Windows::Forms::RadioButton^>(sender);
DisplayMode mode;
if ( rbutton->Text->Equals( "ANSI" ) )
{
mode = DisplayMode::Ansi;
}
else
if ( rbutton->Text->Equals( "Hex" ) )
{
mode = DisplayMode::Hexdump;
}
else
if ( rbutton->Text->Equals( "Unicode" ) )
{
mode = DisplayMode::Unicode;
}
else
{
mode = DisplayMode::Auto;
}
// Sets the display mode.
byteviewer->SetDisplayMode( mode );
}
void InitializeForm()
{
this->SuspendLayout();
this->ClientSize = System::Drawing::Size( 680, 440 );
this->MinimumSize = System::Drawing::Size( 660, 400 );
this->Size = System::Drawing::Size( 680, 440 );
this->Name = "Byte Viewer Form";
this->Text = "Byte Viewer Form";
this->button1 = gcnew System::Windows::Forms::Button;
this->button1->Location = System::Drawing::Point( 8, 8 );
this->button1->Size = System::Drawing::Size( 190, 23 );
this->button1->Name = "button1";
this->button1->Text = "Set Bytes From File...";
this->button1->TabIndex = 0;
this->button1->Click += gcnew EventHandler( this, &ByteViewerForm::loadBytesFromFile );
this->Controls->Add( this->button1 );
this->button2 = gcnew System::Windows::Forms::Button;
this->button2->Location = System::Drawing::Point( 198, 8 );
this->button2->Size = System::Drawing::Size( 190, 23 );
this->button2->Name = "button2";
this->button2->Text = "Clear Bytes";
this->button2->Click += gcnew EventHandler( this, &ByteViewerForm::clearBytes );
this->button2->TabIndex = 1;
this->Controls->Add( this->button2 );
System::Windows::Forms::GroupBox^ group = gcnew System::Windows::Forms::GroupBox;
group->Location = Point(418,3);
group->Size = System::Drawing::Size( 220, 36 );
group->Text = "Display Mode";
this->Controls->Add( group );
System::Windows::Forms::RadioButton^ rbutton1 = gcnew System::Windows::Forms::RadioButton;
rbutton1->Location = Point(6,15);
rbutton1->Size = System::Drawing::Size( 46, 16 );
rbutton1->Text = "Auto";
rbutton1->Checked = true;
rbutton1->Click += gcnew EventHandler( this, &ByteViewerForm::changeByteMode );
group->Controls->Add( rbutton1 );
System::Windows::Forms::RadioButton^ rbutton2 = gcnew System::Windows::Forms::RadioButton;
rbutton2->Location = Point(54,15);
rbutton2->Size = System::Drawing::Size( 50, 16 );
rbutton2->Text = "ANSI";
rbutton2->Click += gcnew EventHandler( this, &ByteViewerForm::changeByteMode );
group->Controls->Add( rbutton2 );
System::Windows::Forms::RadioButton^ rbutton3 = gcnew System::Windows::Forms::RadioButton;
rbutton3->Location = Point(106,15);
rbutton3->Size = System::Drawing::Size( 46, 16 );
rbutton3->Text = "Hex";
rbutton3->Click += gcnew EventHandler( this, &ByteViewerForm::changeByteMode );
group->Controls->Add( rbutton3 );
System::Windows::Forms::RadioButton^ rbutton4 = gcnew System::Windows::Forms::RadioButton;
rbutton4->Location = Point(152,15);
rbutton4->Size = System::Drawing::Size( 64, 16 );
rbutton4->Text = "Unicode";
rbutton4->Click += gcnew EventHandler( this, &ByteViewerForm::changeByteMode );
group->Controls->Add( rbutton4 );
this->ResumeLayout( false );
}
};
[STAThread]
int main()
{
Application::Run( gcnew ByteViewerForm );
}
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Windows.Forms;
namespace ByteViewerForm
{
public class ByteViewerForm : System.Windows.Forms.Form
{
private System.Windows.Forms.Button button1;
private System.Windows.Forms.Button button2;
private System.ComponentModel.Design.ByteViewer byteviewer;
public ByteViewerForm()
{
// Initialize the controls other than the ByteViewer.
InitializeForm();
// Initialize the ByteViewer.
byteviewer = new ByteViewer();
byteviewer.Location = new Point( 8, 46 );
byteviewer.Size = new Size( 600, 338 );
byteviewer.Anchor = AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Top;
byteviewer.SetBytes( new byte[] { } );
this.Controls.Add( byteviewer );
}
// Show a file selection dialog and cues the byte viewer to
// load the data in a selected file.
private void loadBytesFromFile(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
if( ofd.ShowDialog() != DialogResult.OK )
return;
byteviewer.SetFile(ofd.FileName);
}
// Clear the bytes in the byte viewer.
private void clearBytes(object sender, EventArgs e)
{
byteviewer.SetBytes( new byte[] { } );
}
// Changes the display mode of the byte viewer according to the
// Text property of the RadioButton sender control.
private void changeByteMode(object sender, EventArgs e)
{
System.Windows.Forms.RadioButton rbutton =
(System.Windows.Forms.RadioButton)sender;
DisplayMode mode;
switch( rbutton.Text )
{
case "ANSI":
mode = DisplayMode.Ansi;
break;
case "Hex":
mode = DisplayMode.Hexdump;
break;
case "Unicode":
mode = DisplayMode.Unicode;
break;
default:
mode = DisplayMode.Auto;
break;
}
// Sets the display mode.
byteviewer.SetDisplayMode( mode );
}
private void InitializeForm()
{
this.SuspendLayout();
this.ClientSize = new System.Drawing.Size(680, 440);
this.MinimumSize = new System.Drawing.Size(660, 400);
this.Size = new System.Drawing.Size(680, 440);
this.Name = "Byte Viewer Form";
this.Text = "Byte Viewer Form";
this.button1 = new System.Windows.Forms.Button();
this.button1.Location = new System.Drawing.Point(8, 8);
this.button1.Size = new System.Drawing.Size(190, 23);
this.button1.Name = "button1";
this.button1.Text = "Set Bytes From File...";
this.button1.TabIndex = 0;
this.button1.Click += new EventHandler(this.loadBytesFromFile);
this.Controls.Add(this.button1);
this.button2 = new System.Windows.Forms.Button();
this.button2.Location = new System.Drawing.Point(198, 8);
this.button2.Size = new System.Drawing.Size(190, 23);
this.button2.Name = "button2";
this.button2.Text = "Clear Bytes";
this.button2.Click += new EventHandler(this.clearBytes);
this.button2.TabIndex = 1;
this.Controls.Add(this.button2);
System.Windows.Forms.GroupBox group = new System.Windows.Forms.GroupBox();
group.Location = new Point(418, 3);
group.Size = new Size(220, 36);
group.Text = "Display Mode";
this.Controls.Add( group );
System.Windows.Forms.RadioButton rbutton1 = new System.Windows.Forms.RadioButton();
rbutton1.Location = new Point(6, 15);
rbutton1.Size = new Size(46, 16);
rbutton1.Text = "Auto";
rbutton1.Checked = true;
rbutton1.Click += new EventHandler(this.changeByteMode);
group.Controls.Add( rbutton1 );
System.Windows.Forms.RadioButton rbutton2 = new System.Windows.Forms.RadioButton();
rbutton2.Location = new Point(54, 15);
rbutton2.Size = new Size(50, 16);
rbutton2.Text = "ANSI";
rbutton2.Click += new EventHandler(this.changeByteMode);
group.Controls.Add( rbutton2 );
System.Windows.Forms.RadioButton rbutton3 = new System.Windows.Forms.RadioButton();
rbutton3.Location = new Point(106, 15);
rbutton3.Size = new Size(46, 16);
rbutton3.Text = "Hex";
rbutton3.Click += new EventHandler(this.changeByteMode);
group.Controls.Add( rbutton3 );
System.Windows.Forms.RadioButton rbutton4 = new System.Windows.Forms.RadioButton();
rbutton4.Location = new Point(152, 15);
rbutton4.Size = new Size(64, 16);
rbutton4.Text = "Unicode";
rbutton4.Click += new EventHandler(this.changeByteMode);
group.Controls.Add( rbutton4 );
this.ResumeLayout(false);
}
[STAThread]
static void Main()
{
Application.Run(new ByteViewerForm());
}
}
}
Imports System.Drawing
Imports System.Collections
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Windows.Forms
Public Class ByteViewerForm
Inherits System.Windows.Forms.Form
Private button1 As System.Windows.Forms.Button
Private button2 As System.Windows.Forms.Button
Private byteviewer As System.ComponentModel.Design.ByteViewer
Public Sub New()
' Initialize the controls other than the ByteViewer.
InitializeForm()
' Initialize the ByteViewer.
byteviewer = New ByteViewer
byteviewer.Location = New Point(8, 46)
byteviewer.Size = New Size(600, 338)
byteviewer.Anchor = AnchorStyles.Left Or AnchorStyles.Bottom Or AnchorStyles.Top
byteviewer.SetBytes(New Byte() {})
Me.Controls.Add(byteviewer)
End Sub
' Show a file selection dialog and cues the byte viewer to
' load the data in a selected file.
Private Sub loadBytesFromFile(ByVal sender As Object, ByVal e As EventArgs)
Dim ofd As New OpenFileDialog
If ofd.ShowDialog() <> System.Windows.Forms.DialogResult.OK Then
Return
End If
byteviewer.SetFile(ofd.FileName)
End Sub
' Clear the bytes in the byte viewer.
Private Sub clearBytes(ByVal sender As Object, ByVal e As EventArgs)
byteviewer.SetBytes(New Byte() {})
End Sub
' Changes the display mode of the byte viewer according to the
' Text property of the RadioButton sender control.
Private Sub changeByteMode(ByVal sender As Object, ByVal e As EventArgs)
Dim rbutton As System.Windows.Forms.RadioButton = _
CType(sender, System.Windows.Forms.RadioButton)
Dim mode As DisplayMode
Select Case rbutton.Text
Case "ANSI"
mode = DisplayMode.Ansi
Case "Hex"
mode = DisplayMode.Hexdump
Case "Unicode"
mode = DisplayMode.Unicode
Case Else
mode = DisplayMode.Auto
End Select
' Sets the display mode.
byteviewer.SetDisplayMode(mode)
End Sub
Private Sub InitializeForm()
Me.SuspendLayout()
Me.ClientSize = New System.Drawing.Size(680, 440)
Me.MinimumSize = New System.Drawing.Size(660, 400)
Me.Size = New System.Drawing.Size(680, 440)
Me.Name = "Byte Viewer Form"
Me.Text = "Byte Viewer Form"
Me.button1 = New System.Windows.Forms.Button
Me.button1.Location = New System.Drawing.Point(8, 8)
Me.button1.Size = New System.Drawing.Size(190, 23)
Me.button1.Name = "button1"
Me.button1.Text = "Set Bytes From File..."
Me.button1.TabIndex = 0
AddHandler Me.button1.Click, AddressOf Me.loadBytesFromFile
Me.Controls.Add(Me.button1)
Me.button2 = New System.Windows.Forms.Button
Me.button2.Location = New System.Drawing.Point(198, 8)
Me.button2.Size = New System.Drawing.Size(190, 23)
Me.button2.Name = "button2"
Me.button2.Text = "Clear Bytes"
AddHandler Me.button2.Click, AddressOf Me.clearBytes
Me.button2.TabIndex = 1
Me.Controls.Add(Me.button2)
Dim group As New System.Windows.Forms.GroupBox
group.Location = New Point(418, 3)
group.Size = New Size(220, 36)
group.Text = "Display Mode"
Me.Controls.Add(group)
Dim rbutton1 As New System.Windows.Forms.RadioButton
rbutton1.Location = New Point(6, 15)
rbutton1.Size = New Size(46, 16)
rbutton1.Text = "Auto"
rbutton1.Checked = True
AddHandler rbutton1.Click, AddressOf Me.changeByteMode
group.Controls.Add(rbutton1)
Dim rbutton2 As New System.Windows.Forms.RadioButton
rbutton2.Location = New Point(54, 15)
rbutton2.Size = New Size(50, 16)
rbutton2.Text = "ANSI"
AddHandler rbutton2.Click, AddressOf Me.changeByteMode
group.Controls.Add(rbutton2)
Dim rbutton3 As New System.Windows.Forms.RadioButton
rbutton3.Location = New Point(106, 15)
rbutton3.Size = New Size(46, 16)
rbutton3.Text = "Hex"
AddHandler rbutton3.Click, AddressOf Me.changeByteMode
group.Controls.Add(rbutton3)
Dim rbutton4 As New System.Windows.Forms.RadioButton
rbutton4.Location = New Point(152, 15)
rbutton4.Size = New Size(64, 16)
rbutton4.Text = "Unicode"
AddHandler rbutton4.Click, AddressOf Me.changeByteMode
group.Controls.Add(rbutton4)
Me.ResumeLayout(False)
End Sub
<STAThread()> _
Shared Sub Main()
Application.Run(New ByteViewerForm)
End Sub
End Class
注解
标识符 DisplayMode 用于指示用于显示每个字节序列的显示模式。