Visual Basic 6.0 と .NET コントロールの違い
ポール・D・シェリフ
PDSA, Inc.
2001 年 11 月
概要: このドキュメントでは、Microsoft Visual Basic 6.0 の標準コントロールと同等の Microsoft .NET コントロールについて説明します。 (18ページ印刷)
目標
- .NET で同等のものがある Visual Basic 6.0 ActiveX コントロールについて説明します
- .NET コントロールで変更されたプロパティについて説明します
- .NET を初めて使用するコントロールについて説明します
前提条件
このドキュメントを最大限に活用するには、次のことが当てはまります。
- ActiveX コントロールとは何かを理解している
- Visual Basic 6.0 コントロールと ActiveX コントロールを使用して Windows アプリケーションをビルドしました
内容
標準コントロールの違い
.NET の新しいコントロール
プロパティの変更
一般的なコントロールの変更
標準コントロールの違い
まとめ
標準コントロールの違い
Microsoft .NET コントロールは、.NET コントロールが他のクラスの階層から作成されるという点で、Microsoft® ActiveX® コントロールとは内部的に大きく異なります。 これらの .NET コントロールが継承されるクラスがいくつかあります。各クラスは、実際のコントロールにドリルダウンするときに、より多くの機能を絞り込んで追加します。 コントロールのクラス階層の上部には、 Control クラスがあります。 ただし、独自のコントロールを作成する場合は、必要なプロパティとイベントが含まれており、構成コントロールのすべての描画が自動的に行われるため、 UserControl クラスから継承される可能性が高くなります。
.NET でユーザー インターフェイスを作成し始めると、Microsoft Visual Basic® 6.0 で知っていたコントロールの多くがなくなったか、名前が変更されていることがわかります。 このドキュメントでは、Visual Basic 6.0 の標準コントロールと同等の .NET コントロールについて説明します。 このドキュメントの後半では、これらの各コントロールのプロパティ名の具体的な違いについて説明します。 プロパティの変更やイベント名の変更以外に、これらのコントロールは Visual Basic 6.0 とほとんど同じように動作することがわかります。
表 1 に、Visual Basic 6.0 ツールボックスにある標準コントロールと、同等の .NET コントロールを示します。 ここでは、すべての .NET コントロールについて説明するわけではありませんが、この表では、.NET のコントロールに対して行われた変更の種類について説明します。
表 1 .NET で名前が変更された ActiveX コントロール
Visual Basic 6.0 Standard コントロール | 同等の .NET コントロール |
---|---|
写真 | PictureBox |
Label | Label |
TextBox | TextBox |
Frame | GroupBox |
コマンド ボタン | Button |
CheckBox | CheckBox |
OptionButton | RadioButton |
ListBox | ListBox |
ComboBox | ComboBox |
HScrollBar | HScrollBar |
VscrollBar | VScrollBar |
Timer | Timer |
DriveListBox | 該当なし。 OpenFileDialog コントロールに置き換えられました |
DirListBox | 該当なし。 OpenFileDialog コントロールに置き換えられました |
Filelistbox | 該当なし。 OpenFileDialog コントロールに置き換えられました |
図形 | 該当なし。 次に、.NET 共通言語ランタイム (CLR) の クラスを使用して図形を描画します。 |
線 | 該当なし。 次に、.NET CLR の クラスを使用して線を描画します。 |
Image | 該当なし。 PictureBox コントロールを使用して、1 つの画像を表示します。 |
データ | 該当なし。 .NET のデータ バインディングは、Visual Basic 6.0 とは完全に異なります。 |
OLE●ole○ | 該当なし |
ImageList | ImageList |
.NET の新しいコントロール
標準コントロールに加えて、.NET には新しいコントロールのグループ全体があります。 これらのコントロールの中には、Visual Basic 6.0 で同等のものもあれば、新しいコントロールもあります。 次に、.NET で使用できる新しいコントロールの一覧を示します。
表 2 ユーザー インターフェイスを構築するために使用できる標準コントロール
新しいコントロール | 説明 |
---|---|
LinkLabel | Windows フォームにハイパーリンクを配置できます。 ブラウザー内での使用に慣れているハイパーリンクと同じように動作します。 |
MainMenu | フォーム上のメニューを作成するのに役立ちます |
DataGrid | ADO.NET データセットのデータを表形式で表示します。 これは Visual Basic 6.0 の FlexGrid コントロールによく似ていますが、多くの新機能があります。 |
CheckedListBox | 各アイテムの横にあるチェック ボックスを使用して、ユーザーがリスト内の 1 つ以上の項目を選択できるようにする拡張 ListBox 。 Visual Basic 6.0 でこれを行うには、 Style プロパティを 1-Checked に設定します。 |
TabControl | Visual Basic 6.0 の TabStrip コントロールと SSTab コントロールの両方の機能を組み合わせたもの |
スプリッター | デュアル ペインを使用してエクスプローラーのようなインターフェイスを作成できます |
DomainUpDown | テキスト ボックスと 上方向 キーを組み合わせます。 コンボ ボックスのように動作します。このリストには任意の種類のデータを配置でき、ユーザーは上矢印と下矢印をクリックしてデータをスクロールできます。 |
TrackBar | Visual Basic 6.0 の古い スライダー コントロールとよく似ています |
HelpProvider | フォームのトレイにこのコントロールを追加すると、フォーム上の各コントロールに HelpString、 HelpTopic、 および ShowHelp プロパティが追加されます。 |
ToolTip | フォームのトレイにこのコントロールを追加すると、フォームの各コントロールに ToolTip プロパティが追加されます。 |
NotifyIcon | 通常、Windows サービスを作成する場合にのみ使用されます。これにより、タスク バーのシステム トレイに表示される アイコン を設定できます。 クリックすると、メニューを表示したり、そのプログラム内の任意のフォームを表示することができます。 |
ContextMenu | フォームに別のメニューを追加し、フォーム上の任意のコントロールに割り当てることができます。 |
OpenFileDialog | [ファイルを 開く ] ダイアログ ボックスを表示します。 このコントロールは、以前は Visual Basic 6.0 の CommonDialog コントロールのメソッドでした。 |
SaveFileDialog | [ファイルの 保存] ダイアログ ボックスを表示します。 このコントロールは、以前は Visual Basic 6.0 の CommonDialog コントロールのメソッドでした。 |
FontDialog | [ フォント] ダイアログ ボックスを表示します。 このコントロールは、以前は Visual Basic 6.0 の CommonDialog コントロールのメソッドでした。 |
ColorDialog | [ 色 ] ダイアログ ボックスを表示します。 このコントロールは、以前は Visual Basic 6.0 の CommonDialog コントロールのメソッドでした。 |
PrintDialog | [ 印刷 ] ダイアログ ボックスを表示します。 このコントロールは、以前は Visual Basic 6.0 の CommonDialog コントロールのメソッドでした。 |
PrintPreviewDialog | PrintPreviewControl と組み合わせて使用します |
PrintPreviewControl | プリンターの代わりにプレビュー ウィンドウに印刷できます |
ErrorProvider | フォームのトレイにこのコントロールを追加すると、フォームの各コントロールに Error、 IconAlignment、 IconPadding の各プロパティが追加されます。 |
PrintDocument | 他のクラスと共に、 を使用すると、プリンターにドキュメントを送信できます |
PageSetupDialog | ユーザーが余白や用紙の向きなどの設定を操作できるダイアログ ボックスを表示します |
プロパティの変更
コントロール間でプロパティ名の一貫性を保ち、より意味を持たせるために、多くのプロパティ名が Visual Basic 6.0 で呼び出されたものから変更されています。 (DDE プロパティの場合と同様に) 不要になったプロパティや、実行した機能が .NET の他のコントロールまたは他のメソッドに置き換えられたため、一部のプロパティは削除されました。
共通プロパティを削除しました
Visual Basic 6.0 では、すべてのコントロールに共通するプロパティが多数ありました。 これらのプロパティの多くは、適用されなくなったので .NET で削除されています。または、その機能がまったく異なる方法で処理されるようになりました。 表 3 に、.NET で使用できない Visual Basic 6.0 コントロールの一般的なプロパティの一覧を示します。 このドキュメントの後半では、新しい同等物が表示されるか、削除された理由について説明します。
表 3 .NET で使用できない Visual Basic 6.0 プロパティ
Removed プロパティ |
---|
DragIcon |
DragMode |
Index |
LinkItem |
LinkMode |
LinkTimeout |
LinkTopic |
MouseIcon |
MousePointer |
OLEDragMode |
OLEDropMode |
新しい共通プロパティ
多くの場合、すべてのコントロールに共通のプロパティ セットが必要になります。 Visual Basic 6.0 と同様に、.NET のすべてのコントロールに一連のプロパティもあります。 表 4 に、この一覧を示し、新しい各プロパティの機能について説明します。
表 4 .NET で使用できる新しいプロパティ
新しいプロパティ | 説明 |
---|---|
AccessibleDescription | ナレーター アクセサリによって読み取られる説明。 ナレーターは、視覚障がコンピューターのスピーカーを介して読み上げられるコンピューター画面上の単語を持つ通信ツールです。 ほとんどの Windows システムで使用するには、[ スタート]、[ プログラム]、[ アクセサリ]、[ アクセシビリティ] の順にクリックし、[ ナレーター] をクリックします。 このツールは、画面上でマウスを動かすと単語を読み上げます。 この説明を入力し、ナレーター ツールを実行すると、この説明がユーザーに読み上げられます。 |
AccessibleName | ナレーター アクセサリによって報告されるコントロールの名前 |
AccessibleRole | ナレーター アクセサリによってユーザーに報告されるロール |
AllowDrop | コントロールがドラッグ アンド ドロップ通知を受信するかどうかを決定します |
アンカー | コントロールをフォームに固定する場所を決定します。 任意のスタイルのアンカーを選択できます。 |
ContextMenu | このプロパティを ContextMenu コントロールの名前に設定すると、このコントロールの右マウス ボタンをクリックすると、コントロール メニューが自動的に表示されます。 |
Dock | このコントロールがこのフォームにドッキングする場所を決定します。 コントロールをドッキングすると、コントロールはフォームと共に拡大および縮小されますが、同じ場所にドッキングされた状態が維持されます。 |
Locked | True に設定すると、このコントロールはデザイン時に移動できません。 |
修飾子 | コントロールのスコープを決定します。 既定では、.NET ではすべてのコントロールが Friend です。 以前のバージョンの Visual Basic では、すべてのコントロールが パブリックでした。 [ プライベート]、[ 保護済み]、[ フレンド]、または [ パブリック] を選択できるようになりました。 |
変更されたプロパティ
Visual Basic 6.0 には、すべてのコントロールの一部である必要がある 4 つのプロパティがありました。 これらのプロパティは 、Left、 Top、 Width、 Height でした。 これらのプロパティは引き続き使用可能ですが、 Location と Size という名前の新しい構造体を使用することをお勧めします。 表 5 に、これらの新しいプロパティの概要と、これらの新しい各プロパティで見つかる構造体の説明を示します。
表 5. .NET の Location プロパティと Size プロパティ
プロパティ | 説明 |
---|---|
場所 | このコントロールが配置されている場所の X 座標と Y 座標を提供する Point 構造体。 以前のバージョンの Visual Basic では、 これは Left プロパティと Top プロパティを使用して設定されていました。 |
Size | コントロールの幅と高さを示す Size 構造体。 以前のバージョンの Visual Basic では、 これは Width プロパティと Height プロパティを使用して設定されていました。 |
一般的なコントロールの変更
Visual Basic 6.0 と比較して、.NET でのコントロールの動作には多くの変更があります。 次の 9 つのセクションでは、これらの変更の一部と、それらが .NET での開発にどのような影響を与えるかについて説明します。
.NET コントロールの作成
Visual Basic 6.0 と比較した .NET の最大の変更点の 1 つは、フォーム上のコントロールをインスタンス化するコードが表示されるようになった点です。 以前は、このコードはすべて ActiveX コントロール内と Visual Basic の実行時に非表示にされていました。 これで、フォームの背後にあるコードの [#Region] セクションを展開して確認できます。 1 つのラベル、1 つのテキスト ボックス、1 つのボタン コントロールを含むサンプル フォームを次に示します。
Public Class frmTest
Inherits System.Windows.Forms.Form
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'This call is required by the Windows Form Designer.
InitializeComponent()
'Add any initialization after the InitializeComponent() call
End Sub
'Form overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
Friend WithEvents Label1 As System.Windows.Forms.Label
Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
Friend WithEvents Button1 As System.Windows.Forms.Button
'Required by the Windows Form Designer
Private components As System.ComponentModel.Container
'NOTE: The following procedure is required by the Windows Form
Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> Private Sub
InitializeComponent()
Me.Label1 = New System.Windows.Forms.Label()
Me.TextBox1 = New System.Windows.Forms.TextBox()
Me.Button1 = New System.Windows.Forms.Button()
Me.SuspendLayout()
'
'Label1
'
Me.Label1.Name = "Label1"
Me.Label1.TabIndex = 0
Me.Label1.Text = "Label1"
'
'TextBox1
'
Me.TextBox1.Location = New System.Drawing.Point(8, 80)
Me.TextBox1.Name = "TextBox1"
Me.TextBox1.TabIndex = 1
Me.TextBox1.Text = "TextBox1"
'
'Button1
'
Me.Button1.Location = New System.Drawing.Point(112, 32)
Me.Button1.Name = "Button1"
Me.Button1.TabIndex = 2
Me.Button1.Text = "Button1"
'
'frmTest
'
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(392, 250)
Me.Controls.AddRange(New System.Windows.Forms.Control()
{Me.Button1, Me.TextBox1, Me.Label1})
Me.HelpButton = True
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmTest"
Me.Text = "frmTest"
Me.ResumeLayout(False)
End Sub
#End Region
End Class
ご覧のように、各コントロールが作成され、 Location や Size などのプロパティが初期化されます。 Visual Studio Designerの [プロパティ] ウィンドウで設定したその他のプロパティも、このセクションにコードとして追加されます。 あなたが本当に望むなら、あなたはメモ帳だけであなたのユーザーインターフェイスを設計することができます!
メモ この#Region領域のコードは変更しないでください。 このコードは、フォームにコントロールを追加または削除するたびに、Visual Studio 環境によって自動的に作成および破棄されます。
アンカー
多くの Visual Basic 開発者に似ている場合は、コントロールをフォームの下端に固定するコードを、許可するよりも多くの時間を記述しています。 ユーザーがフォームのサイズを変更できるようにしたいが、フォーム上の特定のコントロールは常にフォームの下端や右端を基準にして配置を維持する必要がある。 コードを捨てる! Visual Studio .NET には、Anchor プロパティという単純なソリューションが用意されています。 このプロパティを使用すると、コンテナーのエッジの一部またはすべてにコントロールを固定できます。 下端または右端に固定すると、フォームのサイズを変更するときにコントロールが浮動します。 上端または左端に固定すると、フォームのサイズを変更するときにコントロールのサイズが変更されます。 この新しいプロパティを試して、コントロールに対するその効果のハングを取得します。
図 1. 一般的なデータ入力画面
図 1 に示すような型指定されたデータ入力フォームでは、フォームの右下隅に [追加]、[ 更新]、[ 削除]、[ クリア ] の各ボタンを表示する必要があります。 これを行うには、ボタンを強調表示し、 Anchor プロパティを BottomRight に設定します。 これを行うには、プロパティ ウィンドウで Anchor プロパティを見つけて、ドロップダウン矢印をクリックします。 図 2 に示すように、上下の選択したバーをクリアし、下と右のバーを選択します。
図 2. [アンカー] ドロップダウン リストがアクティブになっている [プロパティ] ダイアログ ボックス
Anchor プロパティを使用すると、コード行を記述しなくても、フォームの端にコントロールを固定できます。 グラフィック メニューからオプションを選択すると、必要な動作を選択できます。 コードでは、TopLeft、BottomRight、Left、Right、Top、Bottom、TopLeftBottom、All などの定数を使用して、プロパティ値を設定できます。
ドッキング
Dock プロパティは、コントロールをコンテナーのエッジにドッキングできる点で、Anchor プロパティに似ています。 コントロールをドッキングすると、コントロールはフォームと共に拡大および縮小されますが、ドッキングされる側は変わりません。 コントロールをすべてのフォーム側にドッキングすると、コントロールはフォーム全体に入力されます。
コントロール配列について
Visual Basic 6.0 では、コントロール配列を作成するために、すべてのコントロールの Name プロパティを同じ値に設定します。 次に 、Index プロパティがコントロールごとに異なる数値に設定されました。 この Index 値は、このイベントを呼び出したコントロールがわかっているので、そのコントロールのグループのイベントに渡されました。 これは、Visual Basic 6.0 でのコントロール配列の使用の 1 つでした。1 つのイベント プロシージャが複数のコントロールのコードを処理する機能。
Visual Basic .NET では、コントロール配列の処理方法が大きく異なります。 1 つのプロシージャで複数のコントロールのイベントを処理する方法は 2 つあります。 .NET クラスに組み込まれている AddHandler プロシージャを使用することも、プロシージャで Handles 句を使用することもできます。
フォームの下部にある各ボタンに対して Click イベントを 1 つだけ記述する場合は、そのうちの 1 つをダブルクリックして、コード ウィンドウに Click イベント プロシージャを生成させることができます。 その後、そのプロシージャに何かを行わせるコードを記述できます。
Private Sub btnSave_Click( _
ByVal sender As Object, _
ByVal e As System.EventArgs) _
Handles btnSave.Click, btnNew.Click, btnDelete.Click
MessageBox.Show("A Click event")
End Sub
上記のコードはあまり行いませんが、異なるコントロールが同じプロシージャを呼び出す方法を示しています。 コントロール配列を作成する代わりに、イベント ハンドラーを作成し、複数のコントロールの 1 つ以上のイベントに対応するように割り当てることができます。
Handles 句に加えて、AddHandler ステートメントを使用して、1 つのプロシージャで複数のコントロールのイベントを処理することもできます。 このステートメントを使用すると、任意のイベントにイベント ハンドラーを追加し、呼び出すプロシージャを指定できます。 イベント ハンドラーをイベントに追加するため、同じイベントを処理する一連のイベント ハンドラーを作成できます。 実際には、イベントに反応してどのプロシージャを呼び出すべきかをコントロールに指示しています。 この新しいプロシージャに イベント処理を委任するため、このプロシージャはデリゲートと呼ばれます。
この委任を行うには、既存のコードの TODO コメントの下に、フォームの New メソッドに次のようなコードを追加します。
AddHandler btnDelete.Click, AddressOf ButtonClick
AddHandler btnNew.Click, AddressOf ButtonClick
上記のコードを追加した後、[ 新規]、[ 削除]、または [保存] ボタンをクリックすると、 ButtonClick イベント プロシージャが呼び出されます。 もちろん、この特定のイベント プロシージャと呼ばれるボタンを決定することが必要になる場合があります。 これを行うには、すべてのイベント プロシージャに渡される sender パラメーターを使用できます。 sender は、この特定のイベントを発生させたオブジェクトです。 そのため、次のようなコードを記述できます。
Private Sub ButtonClick( _
ByVal sender As Object, _
ByVal e As System.EventArgs)
If sender Is btnNew Then
MessageBox.Show("New button pressed")
ElseIf sender Is btnSave Then
MessageBox.Show("Save button pressed")
ElseIf sender Is btnDelete Then
MessageBox.Show("Delete button pressed")
End If
End Sub
コントロール配列を設定するこれら 2 つの方法には、実際の違いはありません。 そのため、いずれか 1 つを自由に使用できます。
[既定値] ボタンと [キャンセル] ボタン
以前のバージョンの Visual Basic では、CommandButton コントロールの Default プロパティを True に設定して、Enter キーが押されたときにこのボタンの Click イベントを呼び出す必要があることを Visual Basic に指示します。 別の CommandButton コントロールの Cancel プロパティを設定して、Esc キーを押すと、そのボタンの Click イベントを呼び出す必要があることを Visual Basic に指示します。 その後、これらの Click イベント プロシージャごとにコードを記述してフォームを閉じ、ほとんどの場合、このフォームを呼び出すルーチンにどのボタンが押されたかを示すプロパティを設定する必要がありました。
これで、これらのボタンの下にコードを記述せずにこれを実現できるようになりました。 これを行うには、これらの各ボタンの DialogResult プロパティを特定の値に設定します。 たとえば、フォームに [OK] ボタンと [キャンセル] ボタンがある場合は、これらの各ボタンで DialogResult をそれぞれ [OK] と [キャンセル] に設定します。 次に、フォームの AcceptButton プロパティを [OK] ボタンの名前に設定します。 フォームの CancelButton プロパティを [キャンセル ] ボタンに設定します。
これらのプロパティを設定したら、 ShowDialog メソッドを使用してフォームを表示し、両方のボタンでフォームを自動的に閉じます。 フォームの DialogResult プロパティは、押されたボタンで設定された DialogResult 値に設定されます。 このようにして、呼び出し元プログラム内からフォームを閉じたボタンを特定できます。
Context-Sensitiveメニュー
Windows アプリケーションでは、マウスの右ボタンがこのコントロールをクリックしたときに表示されるコントロールに特別なメニューを割り当てる必要がある場合があります。 これを Visual Basic 6.0 で行うには、 Visible プロパティを False に設定してメニューを作成 しました。 その後、このコントロールの Click イベント プロシージャにコードを記述して、非表示のメニューを表示する必要がありました。
.NET では、 ContextMenu コントロールを使用して、フォームの MainMenu とは完全に別のメニューを作成できるようになりました。 コントロールの ContextMenu プロパティを設定するだけで、このメニューをコントロールに割り当てることができます。 追加のコードを記述する必要はありません。
フォーム上のコントロールのロック
ユーザー インターフェイスを慎重に作成したら、コントロールをクリックしてコードを追加するときに、誤ってコントロールを移動しないようにする必要があります。 Visual Basic 6.0 では、フォーム上のすべてのコントロールをロックするオプションがありました。 これはうまくいきましたが、大きな形式の小さなセクションにまだ取り組んでいる可能性がある場合を除きます。 その 1 つのセクションで作業するには、すべてのコントロールのロックを解除する必要がありました。 潜在的には、誤ってコントロールを移動する可能性があります。
.NET では、コントロールをグループまたは個別にロックできます。 これは、大きなフォームで複数のコントロール セットに取り組む場合に大きな利点になる可能性があります。
MDI フォーム上のコントロール
Visual Basic 6.0 では、MDI フォームに配置できるコントロールは、 Align プロパティを持つコントロールのみです。 .NET では、任意のコントロールを MDI フォームに配置できるようになりました。
DDE がなくなった
動的データ交換 (DDE) は、.NET 言語のテクノロジとして使用できなくなりました。 あるプログラムから別のプログラムに通信する他の多くの方法があるため、このテクノロジは不要になります。 その結果、Link というプレフィックスが付いたすべてのプロパティが、すべてのコントロールから削除されました。
標準コントロールの違い
このドキュメントで既に説明したように、多くの標準コントロールに対して多くのプロパティ変更が行われています。 各標準コントロールで変更または追加されたプロパティを次に示します。 次の表に示す違いは、これらのコントロールに固有のプロパティの違いです。 前に説明した一般的なプロパティも変更されますが、ここでは再反復処理されません。
Label コントロール
新しいプロパティ | 説明 |
---|---|
[テキスト] | Visual Basic 6.0 では、このプロパティは Caption と呼ばれます。 |
テキスト ボックス コントロール
新しいプロパティ | 説明 |
---|---|
AcceptsReturn | True に設定すると、複数行のテキスト ボックスで CRLF が有効な文字として受け入れられます。 CRLF がテキスト ボックスに入力されないようにするには、このプロパティを False に設定 します。 |
AcceptsTab | True に設定すると、複数行のテキスト ボックスはタブを有効な文字として受け入れます。 タブがテキスト ボックスに入力されないようにするには、このプロパティを False に設定 します。 |
CharacterCasing | ユーザーがこのコントロールに入力する文字の大文字と小文字を制御します。 オプションは 、Normal、 UpperCase、 LowerCase です。 |
ReadOnly | ユーザーがこのテキスト ボックスに入力できないようにする場合は 、True に設定します。 このプロパティの機能は、古い Locked プロパティと同じです。 |
TextAlign | ユーザーがテキスト領域にデータを入力するときのテキストの配置を制御します。 このプロパティは、 Left、 Right、または Center に設定できます。 |
Button コントロール
新しいプロパティ | 説明 |
---|---|
BackgroundImage | ボタンに背景画像を設定できます。 この画像の上にテキストを追加することもできます。 |
Dialogresult | フォームがダイアログとして呼び出されたときに返される結果を設定します。 ユーザーがこのボタンを押すと、このプロパティの値が返されます。 |
Flatstyle | ボタンの外観を変更します。 オプションは 、[フラット]、[ ポップアップ]、[ 標準]、[ システム] です。 Windows XP を使用している場合は、XP テーマを使用できるため、 常に System を使用する必要があります。 |
Image | このボタンに表示する画像 |
ImageAlign | ボタン内に画像を配置する場所 |
ImageIndex | ImageList プロパティで設定された ImageList コントロール内のイメージのインデックス番号 |
ImageList | ImageIndex プロパティを使用してイメージを取得する ImageList コントロールの名前 |
Text | Visual Basic 6.0 では、このプロパティは Caption と呼ばれます |
TextAlign | ボタン内に表示されるテキストの配置を制御します。 オプションは 、左、 右、 中央、 中央、 上 または 下、またはこれらの任意の組み合わせです。 |
チェック ボックス コントロール
新しいプロパティ | 説明 |
---|---|
AutoCheck | True に設定すると、コントロール上の任意の場所をクリックすると、チェック ボックスの状態が選択されている状態から選択されていない状態に変わります。 |
BackgroundImage | チェック ボックス コントロールで背景画像を設定できます。 この画像の上にテキストを追加することもできます。 |
CheckAlign | チェック ボックス コントロールの位置を決定します。 Visual Basic 6.0 では、チェック ボックス内のテキストの左右の位置が制限されています。 左、右、上、下、または中央を選択できるようになりました。 |
オン | True=Selected、 False=Unchecked |
CheckState | このプロパティを使用すると、実行時にコントロールに表示する内容に対して、デザイン時に 3 つの状態を設定できます。 選択内容は [オン]、[ オフ]、または [ 不確定] です。 注: Indeterminate は、 ThreeState プロパティが True に設定されている場合にのみ設定できます。 |
Flatstyle | チェック ボックス コントロールの外観を変更します。 オプションは 、[フラット]、[ ポップアップ]、[ 標準]、[ システム] です。 |
Image | このチェック ボックスに表示する画像 |
ImageAlign | チェック ボックス内に画像を配置する場所 |
ImageIndex | ImageList プロパティで設定された ImageList コントロール内のイメージのインデックス番号。 |
ImageList | ImageIndex プロパティを使用してイメージを取得する ImageList コントロールの名前 |
Text | このプロパティは、Visual Basic 6.0 で Caption と呼ばれるのに使用されました。 |
ThreeState | このプロパティを True に設定すると、 CheckState プロパティを Indeterminate に設定できます。 また、ユーザーは [オン]、[ オフ]、[ 不確定] の間で切り替えることもできます。 |
ラジオ ボタン コントロール
新しいプロパティ | 説明 |
---|---|
自動チェック | True に設定 されている場合は、コントロールの任意の場所をクリックすると、状態が [オン] から [オフ] に変わります。 |
BackgroundImage | ラジオ ボタンで背景画像を設定できます。 この画像の上にテキストを追加することもできます。 |
CheckAlign | ラジオ ボタン内のチェックの位置を決定します。 Visual Basic 6.0 では、テキストの左または右にのみ配置できます。これで、 左、 右、 上、 下、または 中央を選択できます。 |
オン | このプロパティは、以前は Visual Basic 6.0 で Value と呼ばれています。 |
Flatstyle | ラジオ ボタン コントロールの外観を変更します。 オプションは [フラット]、[ ポップアップ]、[ 標準]、[ システム] です。 |
Image | このラジオ ボタンに表示する画像 |
ImageAlign | ラジオ ボタン内に画像を配置する場所 |
ImageIndex | ImageList プロパティで設定された ImageList コントロール内のイメージのインデックス番号 |
ImageList | ImageIndex プロパティを使用してイメージを取得する ImageList コントロールの名前 |
Text | このプロパティは、Visual Basic 6.0 で Caption と呼ばれるのに使用されました。 |
TextAlign | ラジオ ボタン内に表示されるテキストの配置を制御します。 このプロパティは、 左、 右、 中央、 中央、 上、 または下、またはこれらの任意の組み合わせに設定できます。 |
コンボ ボックス コントロール
新しいプロパティ | 説明 |
---|---|
DisplayMember | ComboBox に読み込まれた各オブジェクトのコントロールのリスト部分の項目を表示します。 既定の DisplayMember は ToString メソッドです。 |
DropDownStyle | これは、Visual Basic 6.0 では Style と呼ばれるのに使用されました。 Visual Basic 6.0 と同様に、 Simple、 DropDownList、 DropDown のいずれかを選択できます。 |
DropDownWidth | コンボ ボックスのドロップダウン部分の幅 (ピクセル単位)。 これは、フォーム上のコンボ ボックスの実際のサイズとは異なる場合があります。 |
MaxDropDownItems | ユーザーがコンボ ボックスのドロップダウン リスト部分を使用するときに表示される項目の数を設定できます |
MaxLength | DropDownStyle が Simple に設定されている場合に入力できる最大文字数 |
ValueMember | 選択した項目からデータを取得します。 既定値は ToString メソッドです |
リスト ボックス コントロール
新しいプロパティ | 説明 |
---|---|
ColumnWidth | MultiColumn プロパティを True に設定した場合の各列の幅 |
DisplayMember | ListBox に読み込まれた各オブジェクトのコントロールのリスト部分の項目を表示します。 既定の DisplayMember は ToString メソッドです。 |
HorizontalExtent | HorizontalScrollbar プロパティが True に設定されている場合は、スクロール バーがスクロールできる合計幅 (ピクセル単位) を表す数値をこのプロパティに入力できます。 |
HorizontalScrollbar | データがこのボックスの幅に対して広すぎるときに水平スクロール バーが表示されないようにする場合は False に設定します |
ItemHeight | 固定フォントを使用している場合のリスト ボックス内の項目の高さ |
項目 | Visual Basic 6.0 ListBox の List プロパティを置き換えます |
MultiColumn | Visual Basic 6.0 の Columns プロパティを置き換えます。 複数の列を含める場合は、この値を True に 設定します。 |
ScrollAlwaysVisible | スクロール バーを保証するのに十分なデータがない場合でも、スクロール バーを表示する場合は True に 設定します。 これは、このリスト ボックスに入るデータに基づいて、リスト ボックスの適切な幅を決定するのに役立ちます。 実行時にデータが読み込まれた状態でスクロール バーが表示される場合は、データが大きくなりすぎると、コントロールの正しい幅をより適切に設定できるようになります。 |
Selectionmode | Visual Basic 6.0 の MultiSelect プロパティを置き換えます。 |
UseTabStop | このリスト ボックスの別の列を Tab 文字で表したくない場合は、False に設定します。 |
ValueMember | 選択した項目からデータを取得します。 既定値は ToString メソッドです。 |
ピクチャ ボックス コントロール
新しいプロパティ | 説明 |
---|---|
BackgroundImage | 画像ボックスに背景画像を設定できます。 この画像の上にテキストを追加することもできます。 |
BorderStyle | [なし] と [固定] に加えて、Fixed3D オプションが含まれています |
Image | これは Picture プロパティの 代わりに使用されるようになりました。 |
OLE サイズ | 画像の表示方法を制御します。 使用できる値は 、Normal、 StretchImage、 AutoSize、 CenterImage です。 |
HScrollBar コントロール
新しいプロパティ | 説明 |
---|---|
[最大] | Visual Basic 6.0 の Max プロパティを置き換えます |
最小 | Visual Basic 6.0 の Min プロパティを置き換えます |
VScrollBar コントロール
プロパティ | 説明 |
---|---|
[最大] | Visual Basic 6.0 の Max プロパティを置き換えます |
最小 | Visual Basic 6.0 の Min プロパティを置き換えます |
その他の制御
Visual Basic .NET で更新された Visual Basic 6.0 の標準コントロールに加えて、他にも多くのコントロールがあります。 実際、非常に多くのコントロールがあり、各コントロールは独自のドキュメントに値します。 このドキュメントに記載されている変更を使用すると、.NET でこれらの新しいコントロールを操作するときに発生する変更の種類を把握できます。
まとめ
.NET でユーザー インターフェイスを作成する方法には、多くの変更が行われています。 以前に使用したコントロールの一部が消えているか、または非常に異なります。 これらの異なるプロパティは特定の動作に使用します。場合によっては、コントロールの代わりにシステム クラスを使用する必要があります。 .NET コントロールは、以前の ActiveX コントロールを大幅に改善していることがわかります。 新しいプロパティとメソッドを使用すると、これまで以上に優れた Windows アプリケーションを開発するのに役立ちます。
著者について
Paul D. Sheriff は、南カリフォルニアのカスタム ソフトウェア開発およびコンサルティング会社である PDSA, Inc.の所有者です。 Paul は南カリフォルニアの MSDN 地域ディレクターであり、Paul Sheriff Teaches Visual Basic という Visual Basic 6 の書籍の著者であり、Visual Basic、SQL Server、.NET、Keystone Learning Systems の Web 開発に関する 72 本以上のビデオを制作しています。 Paul は、 Jumpstart というタイトルの書籍 ASP.NET 共同編集しました。 詳細については、PDSA, Inc. Web サイト (www.pdsa.com) を参照してください。
情報伝達グループについて
インフォーマント・コミュニケーションズ・グループ(www.informant.com)は、情報技術分野に重点を置いた多様なメディア企業です。 ソフトウェア開発出版物、カンファレンス、カタログ発行、Webサイトを専門とするICGは、1990年に設立されました。 ICGは、米国および英国にオフィスを構え、質の高い技術情報に対する IT プロフェッショナルの高い意欲を満たす、メディアおよびマーケティング コンテンツ インテグレーターとして高い評価を受けています。
Copyright © 2001 Informant Communications Group and Microsoft Corporation
技術編集: PDSA, Inc.