連載:Silverlight 3実践プログラミング

ナビゲーション・フレームワークとChildWindowコントロール

シグマコンサルティング 菅原 英治
2009/09/15
Page1 Page2 Page3

 みなさん、こんにちは。本連載では、Silverlight 3の新機能について解説していきます。Silverlight 3では、次に示すとおり、さまざまな機能が追加されました。本連載では、これらの新機能を1つ1つ、その場で実行可能なサンプルと、そのコードを示しながら解説していきます。

【本連載で解説するSilverlight 3の新機能】

  • ナビゲーション・フレームワーク
  • ChildWindowコントロール
  • SaveFileDialog
  • Bitmap API
  • ネットワーク監視 API
  • アウトオブブラウザ体験とオフライン
  • Element-to-Elementバインディング
  • LocalConnection API
  • Perspective 3D
  • ピクセル効果
  • アニメーション・イージング
  • CaretBrush
  • 動的なスタイリング
  • ResourceDictionary
  • バイナリ XML
  • Webサービス・ユーティリティ

 また、Silverlight 3の主要な新機能については、次の記事で概要をご紹介しております。本連載の前にご一読いただけると幸いです。

 本連載の対象読者としては、.NETでの開発経験があり、かつSilverlight 2アプリの開発についてある程度の知識がある方を前提に考えています(「アプリケーション」は「アプリ」と略す)。また、本稿では、次の開発環境を前提に考えています。

【本稿で前提とする開発環境】

 さて、連載第1回目となる今回は、次の2点について解説します。

【本稿で解説するSilverlight 3の新機能】

(1)ナビゲーション・フレームワーク
(2)ChildWindowコントロール

 それではさっそく始めましょう! まずはSilverlight上で画面遷移を簡単に実現できるナビゲーション・フレームワークからです。

【コラム】mixiアプリでSilverlight

 2009年8月、mixiアプリのプラットフォームが公式に公開されました。mixiアプリでは、公式にはFlashがサポートされており、Flashを利用したアプリを開発することが可能です。ではSilverlightは利用できないのでしょうか?

 mixi上のニックネームをSilverlightアプリ上で表示するという簡単なサンプルを作って試してみたところ、mixiアプリでSilverlightを利用することができました。

mixiアプリ上で呼び出したSilverlightアプリ

 Silverlightを利用する際のポイントは、<iframe>を利用して、Silverlightコントロールをホストするタグを読み込ませることです。

ナビゲーション・フレームワーク

ナビゲーション・フレームワークとは

 ナビゲーション・フレームワークとは、これまで実装が面倒であったSilverlightアプリ上での画面遷移を簡単に実現するフレームワークです。

 このフレームワークを利用すると、Silverlightアプリ上の1画面を、まるでWebページのように扱うことが可能となり、ブラウザにも画面遷移の履歴が残ります。そのため、ブラウザの[戻る][進む]ボタンによる遷移が可能となります。

サンプルを動かしてみよう

 まずは実際に次のサンプルを動かして、ナビゲーション・フレームワークの動作を確認してみましょう。(サンプルを動作させるためには、「Silverlight プラグインのインストール」が必要です)。

ナビゲーション・フレームワークを利用したサンプル
右上の[ホーム]リンク、[バージョン情報]リンクをクリックすることで画面を遷移できる。
このサンプルを動作させるためには、「Silverlight プラグインのインストール」が必要です。

 このサンプルを起動すると、まず「ホーム」画面が表示されます。続いて画面右上にある[バージョン情報]をクリックしてみてください。「バージョン情報」画面に遷移することが確認できるはずです。

 また「バージョン情報」画面に遷移したときに、ブラウザの履歴を確認してみてください。履歴上に「ホーム」画面の履歴が残っているはずです。ここでブラウザの[戻る]ボタンをクリックすれば、「ホーム」画面に戻ることができます。

 このように、Silverlight上の画面遷移をWebページのように行えるようにする機能が、ナビゲーション・フレームワークです。またすでにお気づきかも知れませんが、ナビゲーション・フレームでは、画面ごとにタイトルが変わります(「ホーム」画面では「ホーム」、「バージョン情報」画面では「バージョン情報」)。

 また、各画面のアドレス(URL)も、同様に画面ごとに変わります。「ホーム」画面のアドレスは、末尾が「#/Home」、「バージョン情報」画面のアドレスは、末尾が「#/About」となっています。これによって、ディープ・リンク(=ホーム・ページ以外の画面を直接呼び出す機能)に対応しています。このサンプルでいえば、「バージョン情報」画面を、直接呼び出すことが可能ということです。

 では、次にナビゲーション・フレームワークの使い方について解説しましょう。


 INDEX
  連載:Silverlight 3実践プログラミング 
  ナビゲーション・フレームワークとChildWindowコントロール
  1.ナビゲーション・フレームワークとは
    2.ナビゲーション・フレームワークの使い方
    3.ChildWindowコントロールとは/その使い方

インデックス・ページヘ  「Silverlight 3実践プログラミング」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH