Silverlight 2 プロジェクトでの新しいユーザー コントロールの作成
独自のカスタム コントロールをデザインし、それを Silverlight 2 プロジェクトで何度でも再利用することができます。これらのコントロールは、UserControl クラスを継承するため、テンプレートは使用しません。ただし、ユーザー コントロールの外観を完全に制御できるようにするために、コントロールを最初からデザインします。
空のユーザー コントロールを作成するには
Silverlight 2 プロジェクトを開きます。
[ファイル] メニューの [新しいアイテム] をクリックします (Ctrl + N)。
[新規アイテム] ダイアログ ボックスの [インストールされているテンプレート] で [ユーザー コントロール] をクリックします。
[名前] ボックスに、わかりやすい名前でコントロールの名前を入力します。
このユーザー コントロールのコードビハインド ファイルを生成するには、[コード ファイルを含める] チェック ボックスをオンにします。
ヒント : ユーザー コントロールをユーザー操作に応答させたり、ユーザー コントロールに独自の動作を持たせるには、コードビハインド ファイルが必要になります。
[OK] をクリックしてダイアログ ボックスを閉じ、編集するユーザー コントロールを開きます。
これで、ユーザー コントロールの外観をデザインできるようになりました。
既存のオブジェクトからユーザー コントロールを作成するには
既存のオブジェクトの中から、新しいユーザー コントロールのために部分的に使用するオブジェクトを選択します。
ヒント : 複数のオブジェクトを選択するには、Ctrl キーを押しながら各オブジェクトをクリックします。
[ツール] メニューの [コントロールの作成] をクリックするか、F8 キーを押します。
[コントロールの作成] ダイアログ ボックスに、わかりやすい名前でコントロールの名前を入力します。
ユーザー コントロール内に、選択したオブジェクトをそのまま残して、さらに複製を作成する場合は、[元のコンテンツを残し、必要に応じて複製を作成する] チェック ボックスをオンにします。
[OK] をクリックしてユーザー コントロール ファイルを作成し、編集する XAML ファイルをアートボード上に開きます。
プロジェクトのドキュメントにユーザー コントロールの新しいインスタンスを描画するには
すべてのファイルを保存します (Ctrl + Shift + S)。
アセット ライブラリにユーザー コントロールを表示できるようにするには、プロジェクトをビルドします (Ctrl + Shift + B)。
ツールボックスの [アセット ライブラリ] をクリックします。
[アセット ライブラリ] の [カスタム コントロール] タブで、ユーザー コントロールを選択します。
マウスを使用して、アートボード上にユーザー コントロールを描画します。
ヒント : |
---|
Silverlight 2 プロジェクトで [ボタンの作成] コマンドを使用し、選択したオブジェクトからボタンを作成します。アートボード上のオブジェクトを選択し、[Grid] などのレイアウト パネル内にそれらをグループ化したら、[ツール] メニューの [ボタンの作成] をクリックします。[ボタンの作成] コマンドは、ユーザー コントロールを作成するのではなく、選択したオブジェクトから構成されたテンプレートを含むボタンのスタイルを作成します。同じ種類のボタンを新しく描画する場合は、[アート ライブラリ] の [ローカル スタイル] タブでスタイルを選択して、アートボード上で描画します。 |
トラブルシューティング
- [コントロールの作成] コマンドを使用したときに、選択したオブジェクトにイベント ハンドラやトリガなどの要因のあるコンテンツが含まれている場合は、新しく作成したユーザー コントロールにそれらのイベント ハンドラ メソッドやトリガを復元する必要があります。
次のステップ
ユーザー コントロールにオブジェクトを追加できます。詳細については、「Silverlight 2 プロジェクトでのシェイプまたはパスの描画」、「Silverlight 2 プロジェクトにおけるコントロールの描画」、または「プロジェクトへのイメージ、オーディオ、またはビデオ ファイルの追加」を参照してください。
変化するユーザー コントロールのさまざな状態をカスタム定義し、各状態のユーザー コントロールの外観を変えることができます。詳細については、「ユーザー コントロールのビジュアル状態および切り替え時間の定義」を参照してください。
マウスのクリックに応じてユーザー コントロールの外観が変化するようにデザインできます。詳細については、「ユーザー操作への応答でのステートの変更」を参照してください。
ユーザー コントロールをクリックしたときにユーザー コントロールの外観が複雑に変化するようにデザインできます。詳細については、「状態の変更後に再生されるアニメーションの追加」を参照してください。
ボタンのクリックなどのユーザー操作に応じて、実行時にユーザー コントロールが表示されるようにデザインできます。詳細については、「Silverlight 2 アプリケーションでの新しいページの動的読み込み」を参照してください。