SHOEISHA iD

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

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

作って学ぶ! 新人研修/Windowsストアアプリで電子カタログを作ろう

Windowsストアアプリでさまざまな情報を表示しよう

作って学ぶ! 新人研修/Windowsストアアプリで電子カタログを作ろう(5)

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

アプリに表示するデータを用意しよう

 旅行先を決めるときは、観光地やホテルなどの写真や情報が一目で分かると便利です。そこで、旅行カタログアプリでは次のデータを用意します。

  • 旅行先の写真
  • タイトル
  • インフォメーション

 まず、旅行先カタログに表示したい写真を用意し、それらの写真をVisual Studioのソリューションエクスプローラの[images]フォルダにドラッグ&ドロップします。画像は任意のもので構いませんが、サンプルアプリでは(eu1.jpg~eu2.jpgおよびbeach1.jpg~beach5.jpg)の7つのファイルを使います。

画像の登録
画像の登録

 なお、[images]フォルダには、あらかじめアプリケーションのロゴ画像ファイルが4つ(logo.png/smalllogo.png/splashscreen.png/storelogo.png)用意されていますが、これらのファイルを削除しないようにしてください。

データバインディングとは?

 JavaScriptのプログラムで定義したデータを、htmlの画面に表示させるには、プログラムと画面を連携させる必要があります。この連携は「データバインディング」と呼ばれています。このデータバインディングを行うと、プログラムで動的に変更した値を、画面に反映させることができます。

データバインディング
データバインディング

表示するデータを定義する

 用意した画像ファイルにテキスト形式のタイトルとインフォメーションを追加して、次のようにデータを表示させます。

データの表示
データの表示

 まず、アプリケーションで使用するデータを、JavaScriptでプログラミングします。Visual Studioの[ソリューションエクスプローラ]で/jsフォルダを選択した状態で、右クリックし[追加]-[新しい項目]を選択します。新しい項目を作成するダイアログで、JavaScriptファイルを選択し、ファイル名を「traveldata.js」として[追加]ボタンをクリックします。

データの作成
データの作成

 これで、ソリューションエクスプローラの/jsフォルダの配下に、traveldata.jsという新しいJavaScriptのファイルが生成されました。

traveldata.js
traveldata.js

 今回のサンプルアプリでは、ヨーロッパとビーチリゾートの2か所の旅行先データを次のように定義します。

変数と画像ファイル
変数名 画像 説明
dataArrayEU eu1.jpg~eu2.jpg ヨーロッパの写真(2枚)
dataArrayBeach beach1.jpg ~beach1.jpg ビーチリゾートの写真(5枚)

 各画像ファイル(image)に、それぞれテキスト形式のタイトル(title)とインフォメーション(info)を定義します。

データの定義(traveldata.js)
(function () {
    "use strict";
    // 旅行データの登録(ヨーロッパ)
    var dataArrayEU = [
        { title: "イタリア", image: "/images/eu1.jpg", info: "地中海に面した温暖な気候です" },
        { title: "イタリア", image: "/images/eu2.jpg", info: "歴史的な建造物が数多くあります" }
    ];
    // 旅行データの登録(ビーチリゾート)
    var dataArrayBeach = [
        { title: "バリ島", image: "/images/beach1.jpg", info: "プール付きの部屋です" },
        { title: "バリ島", image: "/images/beach2.jpg", info: "コテージが点在しています" },
        { title: "バリ島", image: "/images/beach3.jpg", info: "エステも充実しています" },
        { title: "バリ島", image: "/images/beach4.jpg", info: "天蓋付きのベッドです" },
        { title: "バリ島", image: "/images/beach5.jpg", info: "手入れの行き届いた庭です" }
    ];
})();

 ここで作成したデータを、旅行カタログアプリの画面で使用するために、default.htmlを開き、head要素の中を次のように修正します。

旅行のデータ参照定義(default.htmlの抜粋)
<head>
~中略~
    <!-- WinJS 参照 -->
    ~中略~
    <!-- TravelSample 参照 -->
    ~中略~
    <!--   連載第5回  旅行のデータ参照  -->
    <script src="/js/traveldata.js"></script>
</head>

次のページ
データの表示レイアウトを決めよう

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

  • X ポスト
  • このエントリーをはてなブックマークに追加
作って学ぶ! 新人研修/Windowsストアアプリで電子カタログを作ろう連載記事一覧

もっと読む

この記事の著者

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

静岡県榛原町生まれ。一橋大学経済学部卒業後、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/7451 2013/10/31 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング