SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Silverlight 3徹底入門

Silverlight 3がやってきた

Silverlight 3徹底入門(1)


  • X ポスト
  • このエントリーをはてなブックマークに追加

XAMLデザインビューの削除

 Silverlight 3 Toolsでの大きな変更点にVisual StudioのXAMLデザインビューの削除があります。Silverlight 2 Toolsや3 Toolsのベータ版までは、XAMLの内容をVisual Studioのデザインビューで確認することができましたが、Silverlight 3 Toolsの正式版ではこれが削除されています。このためVisual Studioだけではデザイン時にXAMLのプレビューを行うことができなくなりました。

 どうやら、前述のナビゲーションアプリケーションなどの新しいXAMLへの対応が不十分であったため、今後のリリースに力を入れるためにSilverlight 3 Toolsではリリース直前に削除されたようです。もともとVisual StudioのXAMLデザインビューはおまけ程度の再現力しかなかったため、きっぱりと対応をあきらめVisual Studio 2010への対応に力を入れたのは正しい判断だったと筆者は考えています。

 正式にはデザインビューはサポートされなくなりましたが、実際はサポートされていないだけでSilverlight 2 Tools相当のデザインビューは削除されずに残っています。

 図5はSilverlight 2 ToolsでXAMLデザインビューを表示する方法です。ただこの方法で表示されるデザイナービューは前述したとおりおまけ程度の再現力しかありませんのであまり期待しない方がいいでしょう。

図5 XAMLデザインビューを表示する方法
図5 XAMLデザインビューを表示する方法

 マウスカーソルをVisual StudioのXAMLエディターの「1」の位置に持って行くと「2」のようにアイコンが変化します。「2」の状態のままドラックして引き上げると「3」の画面が表示されます。表示された「Resume loading the designe」のリンクをクリックすると隠されていたデザインビューが表示されます。

ASP.NET Silverlight コントロールの削除

 Silverlight 3 SDKからは、Silverlight 2 SDKにはあった、ASP.NETのSilverlightコントロール(asp:silverlightとasp:media)が削除されています。このコントロールは単にSilverlightのobjectタグをJavaScriptで記述するためのものでしたが、ASP.NETで利用する場合とほかのサーバー技術で利用する場合で記述の方法が違ったり、プログラマがもっとフレキシブルにobjectタグを書けた方がいいのではないかという考えからリリースからは削除されました。

 例えばリスト1はSilverlightコントロールを利用したSilverlight呼び出しの例です。

リスト1 ASP:Silverlightタグを利用した記述
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:Silverlight ID="Silverlight1" runat="server"
                 Width="100%" Height="100%"
                 Source="ClientBin/SilverlightApplication3.xap"
                 OnPluginError="onSilverlightError"
                 BackColor="white"
                 MinimumVersion="3.0"
                 AutoUpgrade="true">
    <PluginNotInstalledTemplate>
          <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40624.0"
            style="text-decoration:none">
              <img src="http://go.microsoft.com/fwlink/?LinkId=108181"
                   alt="マイクロソフト Silverlight を入手"
                   style="border-style:none"/>
          </a>
    </PluginNotInstalledTemplate>
</asp:Silverlight>

 SilverlightコントロールはScriptManagerコントロールが出力するJavascriptを利用するため、必ずページ内にScriptManager(Proxy)を配置する必要があります。

 Silverlighコントロールの詳しい説明はMSDNのSystem.Web.Silverlightを参照してください。

 この例では画面いっぱいにClientBin以下にあるSilverlightアプリケーションを表示しています。またSilverlight内でエラーが発生した際に実行するJavascriptの関数や接続したユーザーがSilverlightをインストールしていない場合のナビゲーションなどを設定しています。

 続いてobjectタグを記述したバージョンを確認しましょう。

リスト2 objectタグを利用した記述
<div id="silverlightControlHost">
    <object data="data:application/x-silverlight-2,"
            type="application/x-silverlight-2" width="100%" height="100%">
      <param name="source" value="ClientBin/SilverlightApplication3.xap"/>
      <param name="onError" value="onSilverlightError" />
      <param name="background" value="white" />
      <param name="minRuntimeVersion" value="3.0.40624.0" />
      <param name="autoUpgrade" value="true" />
      <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40624.0"
        style="text-decoration:none">
          <img src="http://go.microsoft.com/fwlink/?LinkId=108181"
               alt="マイクロソフト Silverlight を入手"
               style="border-style:none"/>
      </a>
    </object>
</div>

 objectタグの記述の違いこそあれ、Silverlightアプリケーションの指定やエラー時の記述のほとんどはasp:Silverlightで記述したものと変わらないことが分かると思います。

次のページ
周辺技術

修正履歴

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Silverlight 3徹底入門連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト かるあ (杉山 洋一)(カルア(スギヤマ ヨウイチ))

WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS Twitter: @yyamada(公式)、@yyamada/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/4432 2009/10/29 10:34

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング