InputMan のコントロールを利用したカスタムコントロールを作成する方法を紹介しています。サンプルのコントロールを Visual Studio に組み込んで利用する方法については、「カスタムコントロールの登録」を参照してください。参照
CustomControlsSamples
カスタムコントロール集に収録したカスタムコントロールの動作を確認できるサンプルプロジェクトです。
My Project/
CustomControlsSamples_2005.sln
CustomControlsSamples_2005.vbproj
CustomControlsSamples_2008.sln
CustomControlsSamples_2008.vbproj
CustomControlsSamples_2010.sln
CustomControlsSamples_2010.vbproj
CustomControlsSamples.Designer.vb
CustomControlsSamples.resx
CustomControlsSamples.vb
Properties/
CustomControlsSamples_2005.csproj
CustomControlsSamples_2005.sln
CustomControlsSamples_2008.csproj
CustomControlsSamples_2008.sln
CustomControlsSamples_2010.csproj
CustomControlsSamples_2010.sln
CustomControlsSamples.cs
CustomControlsSamples.Designer.cs
CustomControlsSamples.resx
Program.cs
プロジェクトの概要
フォーム上にカスタムコントロールが配置されています。各カスタムコントロールの動作を確認することができます。
GcCountDownTimer
InputMan のタイムスパンコントロールを継承したカウントダウンタイマーです。
My Project/
Resources/
GcCountDownTimer_2005.sln
GcCountDownTimer_2005.vbproj
GcCountDownTimer_2008.sln
GcCountDownTimer_2008.vbproj
GcCountDownTimer_2010.sln
GcCountDownTimer_2010.vbproj
GcCountDownTimer.png
GcCountDownTimer.vb
Properties/
Resources/
GcCountDownTimer_2005.csproj
GcCountDownTimer_2005.sln
GcCountDownTimer_2008.csproj
GcCountDownTimer_2008.sln
GcCountDownTimer_2010.csproj
GcCountDownTimer_2010.sln
GcCountDownTimer.cs
GcCountDownTimer.png
Resources.Designer.cs
Resources.resx
コントロールの概要
カウントダウンタイマーコントロールは、以下の機能を搭載しています。
GcCreditCardNumber
InputMan のマスクコントロールを継承したものとキャラクタボックスコントロールを継承したもの、2種類のクレジットカード番号入力用コントロールです。
コントロールの概要
クレジットカード番号コントロールは、以下の機能を搭載しています。
- マスクコントロールの Fields プロパティでクレジット番号の書式が設定されています。
- CredietCardMode プロパティで、クレジット番号の桁数を選択します。
- 各桁の入力が済むと自動的に次のフィールドにカーソルが移動します。
クレジットカード番号ボックスコントロールは、以下の機能を搭載しています。
- CredietCardMode プロパティで、クレジット番号の桁数を選択します。
- 数値のみの入力を設定しています。桁を飛ばして入力できないように設定しています。
- 各桁の入力が済むと自動的に次のフィールドにカーソルが移動します。
GcIPAddress
InputMan のマスクコントロールを継承したIPv4、IPv6のIPアドレス入力用のコントロールです。
コントロールの概要
IPv4アドレスコントロールは、以下の機能を搭載しています。
- マスクコントロールの 列挙型を利用してIPアドレスの入力書式が設定されています。
- 入力候補値を設定しています。
- 上下キーで値を増減することができ、範囲外の入力や増減はできません。
- 各桁の入力が済むと自動的に次のフィールドにカーソルが移動します。
IPv6アドレスコントロールは、以下の機能を搭載しています。
- マスクコントロールの 列挙型を利用してIPアドレスの入力書式が設定されています。
- IPMode プロパティで、IPv6 Only入力モードとIPv4/IPv6 Mixed入力モードを選択します。
- 各桁の入力が済むと自動的に次のフィールドにカーソルが移動します。
GcPercent
InputMan の数値コントロールを継承したパーセント入力用のコントロールです。
コントロールの概要
パーセントコントロールは、以下の機能を搭載しています。
- PercentValue プロパティで計算された値(15%なら0.15)を取得します。
- マイナスの値は入力できないように設定されています。
- 数値コントロールに標準で設定されているサイドボタンを全て削除しています。
GcPhone
InputMan のマスクコントロールを継承した電話番号入力用のコントロールです。
コントロールの概要
電話番号コントロールは、以下の機能を搭載しています。
- マスクコントロールの Fields プロパティで電話番号入力用の書式が設定されています。
- 入力された電話番号から市外局番を認識し、局番を分割するハイフンの位置を自動で調整します。
- 製品に付属のDB Entryを使用して電話番号を検索するかどうかを設定します。
GcPickers
InputMan のコンボコントロールを継承したカラー選択コントロール、フォント選択コントロール、日付コントロールを継承した年月選択コントロールです。
My Project/
GcColorPicker.png
GcColorPicker.vb
GcFontPicker.png
GcFontPicker.vb
GcPickers_2005.sln
GcPickers_2005.vbproj
GcPickers_2008.sln
GcPickers_2008.vbproj
GcPickers_2010.sln
GcPickers_2010.vbproj
GcYearMonthPicker.png
GcYearMonthPicker.vb
bin/
obj/
Properties/
GcColorPicker.cs
GcColorPicker.png
GcFontPicker.cs
GcFontPicker.png
GcPickers_2005.csproj
GcPickers_2005.sln
GcPickers_2008.csproj
GcPickers_2008.sln
GcPickers_2008.suo
GcPickers_2010.csproj
GcPickers_2010.sln
GcYearMonthPicker.cs
GcYearMonthPicker.png
コントロールの概要
カラー選択コントロールは、以下の機能を搭載しています。
- ColorType プロパティで、表示するカラーをシステムカラー、Webカラーから選択します。
- SelectedColor プロパティで選択した色を取得します。コンボコントロールに標準で設定されているショートカット機能を全て削除しています。
フォント選択コントロールは、以下の機能を搭載しています。
- SelectedFontName プロパティで選択したフォント名を取得します。
- F2キーに選択状態をクリアするショートカット機能を設定しています。
年月選択コントロールは、以下の機能を搭載しています。
- ドロップダウンカレンダーは年月に設定されています。
- 日、時分秒は最初にValue プロパティに設定した値が設定されます。
- 日付コントロールに標準で設定されているショートカット機能をそのまま利用しています。
GcPostal
InputMan のマスクコントロールを継承したものとキャラクタボックスコントロールを継承したもの、2種類の郵便番号入力用コントロールです。
My Project/
CZipCode.vb
GcPostal_2005.sln
GcPostal_2005.vbproj
GcPostal_2008.sln
GcPostal_2008.vbproj
GcPostal_2010.sln
GcPostal_2010.vbproj
GcPostal.png
GcPostal.vb
GcPostalBox.png
GcPostalBox.vb
Properties/
CZipCode.cs
GcPostal_2005.csproj
GcPostal_2005.sln
GcPostal_2008.csproj
GcPostal_2008.sln
GcPostal_2010.csproj
GcPostal_2010.sln
GcPostal.cs
GcPostal.png
GcPostalBox.cs
GcPostalBox.png
コントロールの概要
郵便番号コントロールは、以下の機能を搭載しています。
- マスクコントロールの Fields プロパティで郵便番号入力用の書式が設定されています。
- 製品に付属のDB Entryを使用して、郵便番号から住所を検索しています。
- 各桁の入力が済むと自動的に次のフィールドにカーソルが移動します。
郵便番号ボックスコントロールは、以下の機能を搭載しています。
GcValidateItem
InputMan の検証アイテムを継承したE-mailアドレス検証アイテム、URL検証アイテムです。
My Project/
GcEmailAddressValidateItem.vb
GcURLValidateItem.vb
GcValidateItem_2005.sln
GcValidateItem_2005.vbproj
GcValidateItem_2008.sln
GcValidateItem_2008.vbproj
GcValidateItem_2010.sln
GcValidateItem_2010.vbproj
Properties/
GcEmailAddressValidateItem.cs
GcURLValidateItem.cs
GcValidateItem_2005.csproj
GcValidateItem_2005.sln
GcValidateItem_2008.csproj
GcValidateItem_2008.sln
GcValidateItem_2010.csproj
GcValidateItem_2010.sln
検証アイテムの概要
E-mailアドレス検証アイテムは、以下の機能を搭載しています。
- 独自に検証アイテムを作成し、Regexクラスを用いて検証を行っています。
URL検証アイテムは、以下の機能を搭載しています。
カスタムコントロールの登録
作成したコントロールを使用するには、Visual Studio にコンポーネントを組み込む必要があります。
コントロールをツールボックスに追加する
以下に、Visual Studio のツールボックスにコンポーネントを追加する手順を示します。
- [ツール]メニューから[ツールボックスのアイテムの選択]を選択します。
- 〈参照〉ボタンをクリックし、[開く]ダイアログボックスを表示します。
- 以下のアセンブリを選択し〈開く〉ボタンをクリックします。
GrapeCity.Win.Editors.GcCountDownTimer.v60.dll (カウントダウンタイマーコントロール)
GrapeCity.Win.Editors.GcCreditCardNumber.v60.dll (クレジットカード番号コントロール、クレジットカード番号ボックスコントロール)
GrapeCity.Win.Editors.GcIPAddress.v60.dll (IPv4アドレスコントロール、IPv6アドレスコントロール)
GrapeCity.Win.Editors.GcPercent.v60.dll (パーセントコントロール)
GrapeCity.Win.Editors.GcPhone.v60.dll (電話番号コントロール)
GrapeCity.Win.Editors.GcPickers.v60.dll (カラー選択コントロール、フォント選択コントロール、年月選択コントロール)
GrapeCity.Win.Editors.GcPostal.v60.dll (郵便番号コントロール、郵便番号ボックスコントロール) - [ツールボックスのカスタマイズ]ダイアログに各コントロールが追加されます。先頭のチェックボックスがチェックされていることを確認して〈OK〉ボタンをクリックします。
- ツールボックスに各コントロールのアイコンが表示されます。
フォームにコンポーネントを配置する
以下に、コンポーネントをフォームに配置する方法を示します。これにより、コンポーネントがプロジェクトに組み込まれます。
- ツールボックスから指定したコントロールのアイコンを選択してフォームに配置します。
- ソリューションエクスプローラーの参照設定に指定したコントロールの名前空間と InputMan のコンポーネントが追加されます。
カスタム検証アイテムの使い方
カスタム検証アイテムは、下記のような手順で利用します。
- [プロジェクト]メニューから[参照の追加]を選択します。
- 〈参照〉タブをクリックし、以下のアセンブリを選択して〈OK〉ボタンをクリックします。
GrapeCity.Win.Editors.GcValidateItem.v60.dll (E-mailアドレス検証アイテム、URL検証アイテム) - ツールボックスから汎用検証コンポーネントをフォームに配置します。各コントロールの検証アイテムの設定に、E-mailアドレス検証アイテム、URL検証アイテムが追加されます。
参照
InputMan for Windows Forms 6.0J カスタムコントロール集
コメント