レビューメディア「ジグソー」

FreeOrder がページが大きくなりすぎたので後半をこちらに記入します。

(注意)当ページを利用した事によるいかなる損害もnekosogi は一切の責任を負いません。自己の責任の上でご利用ください。
----↓---- Kinect Sensor と Windows ストアアプリの連携? -------
Kinect for Windows センサー L6M-00005 http://zigsow.jp/portal/own_item_detail/205520/
・・・
----↑---- Kinect Sensor と Windows ストアアプリの連携? -------
熊野神社脇の観察園?の緑の写真 http://zigsow.jp/portal/own_item_detail/210235/
FreeOrder 緑の背景素材2 http://zigsow.jp/portal/own_item_detail/215542/
Western Digital Caviar Green 3.5inch 5400rpm 2.0TB 64MB SATA 6.0Gbps WD20EARX
FreeOrder 環境編 http://zigsow.jp/portal/own_item_detail/214346/
FreeOrder (前編) http://zigsow.jp/portal/own_item_detail/215050/
FreeOrders(中編)後半が中編となります。 http://zigsow.jp/portal/own_item_detail/214669/
FreeOredes for 1st AEL(後編) http://zigsow.jp/portal/own_item_detail/215302/
FreeOredes for 1st AEL page 2 http://zigsow.jp/portal/own_item_detail/215561/
SyncroMassgame for 2nd AEL http://zigsow.jp/portal/own_item_detail/215562/
FreeOredes for 1st AEL page 3 http://zigsow.jp/portal/own_item_detail/215744/
Dice http://zigsow.jp/portal/own_item_detail/217279/
Die  http://zigsow.jp/portal/own_item_detail/216966/
Dice can snap http://zigsow.jp/portal/own_item_detail/218873/
---------------------------------------------------------------------------

(はじめに) このFreeOrderの開発コンセプト?を日本語でも紹介します。

『 WP7アプリのテーラーメードーのオーダーが無料で簡単にできる時代をプレゼント!
気に入った時だけ買えばいい。オーダーにPCは必須ではない!スマフォだけでできる!』

 この一部分の機能のWindwos Store プレビュー版公開が第一目標です。スレート用とPC用。
 ベースアプリを2つとオプションアプリを1つ選んでポンとオーダーするだけ。あとはお任せ仕様。
 この簡単オーダー?ビルトインオーダー?のビジネスモデルを作ってみました。

  (これが私が単細胞アプリを種類多く作っていた理由です。)

  WP7の単細胞アプリなら、ビギナーでも機能を1つづ実装して学びながら公開できます。
 そして、たくさんアプリを作るといろんな機能を実際に実装した実力がつきます。
  そのころになると、オーダーがはいることがきっと楽しいはずです。
 アイデアが貰えて世界42か国で販売するコンテンツアプリを1つ増やすことができるのだから。

  
  あなたのWP7マーケットプレースも利用できるようにする予定です。
 FreeOrederのWindows ストアアプリは100円均一の販売を予定iしています。
 どうぞWP7の勉強をまずは始めて、勉強の成果として、毎回ひとつアプリを公開して下さい。
  
  アプリは子供に残せる資産となる?はずです?。
 世界各国の言語にローカライズするとダウンロード数が伸びる?はずです?。

  実力が付いたころには、最初はできなかった凄いアプリが作れるようになってるはずです。

 いいことありますように!
-------------↑----------2012/9/3 17:38 in Tokyo Japan. ----------------------------

-------------↓------- 2012/9/4 add at am 5:36 in Tokyo Japan -----------------------

ビジネスモデルというのに説明が短いので追加した。
大企業の真似をして無料のWP7アプリばかりを作っても仕方がない。MarketPlaceの特性を生かす。
アプリ1本でも300本でも1000本でも年間9800円の在庫管理代と販売管理代の費用が固定で発生。
この固定なのを生かしでアプリを増やす戦略をとる。
すべて有料アプリとし100円均一感覚で販売する。
コンテストなどとタイアップする場合のみ有料アプリにトライアル機能を付ける。
コンテストのみが個人が企業とタイアップできる時だ。有効に自アプリの販促マーケティング活用する。
通常コンテスト参加費用は無料なのでタイアップに必要なのは思いつきだ。あえてアイデアとかかない。
(顧客は)購入義務がないので、気楽に安くテーラーメード体験できる。
(開発者は)オーダーはあっても、納期の義務がないので、マイペースで開発ができる。
(マーケットプレースの特性で審査があるので納期を決めることができない。)また、たとえオーダーの作品を作ってダウンロードされない場合でも、自分がオーナーとなる”個人作”アプリが1つ増やすことができる。
さらに、単細胞アプリアプリなんだけど、最初から製品かつ部品となることが決まっているので、”単純すぎるなアプリだ”という理由でAPPHUBの審査を落ちにくくなる?審査を通過しやすくなる?
(顧客は)オーダーサイトを訪れ、新作やオーダーの進捗や自分がテーラーメード設計した作品のダウンロード数、開発途中の未公開作品情報の一部を知ることができる。
(テーラーメード設計者は)FreeOrderで気に入ったサイトを訪ね、設計し、オーダーして、ダウンロードして、ファンとして、そのサイトを応援する楽しみを持てる。
(テーラーメード設計者は)テーラーメード設計を無料で機会を得るのでお得感あり、かつ、100円のアプリを3個で100円で購入できるので、お得感がある。
(開発者にとって)同時にこれはマーケティング販促活動になる。
(開発者は)真似されること、1アプリを真似されることを気にせず、いっそあきらめることが大切だ。
アプリ1つ1つを”個人作”情報としてとらえ、個人作情報を無料でなく、有料にして、収益化する。
(開発者は)WP7アプリコンテンツ数を増やす意欲が湧く。結果、アイテムの数、種類が多いので、ポートフォリオを組むことができる。そして、販促マーケティング戦略を立てることができる。
例えば、レンタルビデオのように、WP7アプリの旧作や準新作などごとに、あるいは、季節のイベントや期間限定でテーラーメード対象のコアアプリアプリを変化つけることができる。
(私の体験から)作成したWP7アプリは、何がダウンロードされるのかわからないことを知りました。
つまり、何がダウンロードされるのかを決めるのはあなた(テーラーメード設計者)でも、テスターでも、開発者でもありません。
ダウンロードするしないを決めることができるのは、ダウンロードしてくれるお客様やテーラーメードオーダーしてくれる設計者たちなのです。

WP7アプリを公開した人だけができる体験を、未来に繋がるわくわくする体験を、サポートするためにFreeOrderは誕生しました。

-------------↑------ 2012/9/4 add at am 5:36 in Tokyo Japan ------------------------

FreeOrder http://zigsow.jp/portal/own_item_detail/214669/

は前半です。

このページ(FreeOrders) は後半となります。

 【 XENDキーを押すとページ末尾の最新の情報を簡単に確認できます。 】

FreeOrder , FreeOrders , Free Order , Free Orders

blogger で世界に向けて公開しています。
http://incomesoftdotnet.blogspot.jp/2012/09/freeorder.html
w8temlateshare08a4.jpg
w8temlateshare08a4.jpg

中身を表示しているのはこれだ!
このコードで表示している。でも、どうやって移植する?

上図の右下のあたりが、複数選択しているカートの様子だ!(アップバーのピン止め?だけで実現したいが今回はやめた。) これで、ユーザーが簡単にオーダーできるようになるはずだ!


いかん、疲れてきた。本日はこれまで。
かっけ。アンニョン。See you。アディオス アミーゴ。9/3 19:50

--------------2012/9/4 6:31 add ---------------------------------
http://zigsow.jp/portal/own_item_detail/205658/


w8temlateshare08a5.jpg
w8temlateshare08a5.jpg

この図を見てわかるだろうか?
いらないxamlをプロジェクトから除外し、直接ScenarioOutput4を呼び出して、SenarioInput4も画面から消えている。でも、アップバーから呼び出しのpopupから呼べるの?


w8temlateshare08a6.jpg
w8temlateshare08a6.jpg

おおだめだ、わからん!Entertainment Photo2aNGで中断保存した。

ユーザーの使い勝手うんぬんよりも、使い勝手が悪かろうが動く、実装できているほうがやっぱり優先されることに、あらためて気づいた!

急ぐので、できればいい別の方法に変更する!
Entertainment Photo2をコピーしてEntertainment Photo2bChage に改名して調査を始める。


一番簡単な方法は、選んだ画像をピクチャーに既定の名前で保存し、あとで、それを使ってオーダーを出すという仕組みか?


ピクチャー上の既定の名前で保存した画像を検索し画面に表示し、それを

1枚もののアプリを別につくる?


1アプリにするのが難しい!ならば、2アプリにしちゃう?Gridアプリと1枚ものの2アプリで構成する?


だって、組み込み方というか、つなぎ方というか、統合のしかたがすぐにわからないんだもん!


ListViewInteractionAEL4only4bを改造する?


ListViewInteractionAEL1onlyを改造する?


アプリから別アプリを呼ぶのはあり?


MSDN > ホーム > Windows 8 アプリ開発体験テンプレート
http://msdn.microsoft.com/ja-jp/jj556277.aspx
⇒2012/9/4 am 9:38 新しいWindows 8 アプリ開発体験テンプレート が追加されているかチェック


C:\Users\user1\Downloads\Windows 8 app samples - C#, VB.NET, C++, JavaScript
⇒PhotoDataAppStorage エクスプロラーで検索
⇒ 

SDKからファイル操作を見つけてAELをつけてコピーして確認した。
FilePickerContractsAEL
FolderEnumerationAEL
FilePickerAEL
ファイル操作結構大変?


お気に入りに追加の部分だけをコピーして使い、
お気に入りをオーダー候補とした方がいい?


だから今回は、候補を選ぶまで、とプレビューの定義をしてしまう。


でないと間に合わない?5日のチェックリストに?12日のAEL持ち込みに?


でも、10月26日のWindows 8 販売と同時に、もう少し先のFreeOrderをできたら公開したいのだが・・・




オーダーの候補にする
オーダー候補

A candidate for the order
Candidate order


Entertainment Photo2bChageで”お気に入り”文字を”Candidate” 変えてみた。

FreeOrders05では、2層グループの”Our Order Status(The earliest news Incomesoftdotnet)”の文字を”Candidate”に変えて使うことにした。

トップページを2層グループのCandidateにする必要がある?


アップバーのボタンから、2層のグループに遷移するにはどうればいい?


PinAppBarButtonStyle google

アプリ バーに状況依存のコマンドを追加する方法 (C#/VB/C++ と XAML を使った Metro スタイル アプリ)
http://msdn.microsoft.com/ja-jp/library/windows/apps/xaml...
⇒アプリバーでボタンの削除やピンがある。あとでみてみよう。

FreeOrdersAEL010Candidate.jpg
FreeOrdersAEL010Candidate.jpg

FreeOrdersAEL010Candidate1.jpg
FreeOrdersAEL010Candidate1.jpg

FreeOrdersAEL010Candidate2.jpg
FreeOrdersAEL010Candidate2.jpg

<Style x:Key="FavoriteAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
<Setter Property="AutomationProperties.AutomationId" Value="FavoriteAppBarButton"/>
<Setter Property="AutomationProperties.Name" Value="Favorite"/>
<Setter Property="Content" Value="&#xE113;"/>
</Style>
Candidateボタンで使うスタイルをコメントインしてからアップバー右側にボタンを追加する。

var group = (sender as FrameworkElement).DataContext;
this.Frame.Navigate(typeof(GroupDetailPage), ((SampleDataGroup)group).UniqueId);

   ((SampleDataGroup)group).UniqueId "Group-6" string

でも、実行すると2つのイベントで反応しているため、2つ前に戻らないと、
1つ前に戻れない状態となっている。どうしょう?
⇒clickだけにしてもいい?



private void buttonAddFavorit_Click_1(object sender, RoutedEventArgs e)
{
PhotoDataAppStorage.CurrentPhotoDataStorage.AddPhotoToFavoritGroup(this.flipView.SelectedItem as Data.PhotoDataItem);
}

AddPhotoToFavoritGroup
⇒Entertainment Photo2bChage と FreeOrders05 を統合すると
前者は PhotoDataAppStorage.cs
『・・・グループ、写真のデータ、構造をアプリケーションストレージに保持し、永続化する機能を提供します。・・・』
とあり。また、PhotoDataSource.cs
『・・・
// このファイルで定義されるデータ モデルは、メンバーが追加、削除、または変更されるときの通知をサポートする、
// 厳密に型指定されたモデルの代表的な例として機能します。選択された
// プロパティ名は標準の項目テンプレートのデータ バインドと一致します。
・・・』とある。

一方、後者にはPhotoDataSource.csのみがある。

2つクラスのある前者でアプリケーションストレージと、Assets内にあるビルトイン画像をマージした表示ができるはず?なのだが、アプリケーションストレージの画像のみ扱えるようになっている?

1つクラスのある後者はAssets内にあるビルトイン画像をマージした表示ができる。

さあ、この状態で後者に対し、アプリケーションストレージ画像も合わせてマージして?部分的にアプリの別場所で表示できるようにするにはどうやって変更する?


ピクチャフォルダへファイルとして保存するのも面倒だと、思って調査中断したのだが、お気に入りを使った、アプリケーションストレージ画像とAsstes画像を両方扱う、こちらの改造も難しい?


ShareTargetPage.xaml の画面をみるとグループの保存をしようとしてエラーになっている?


このデバッグをする?簡単にできる?


もし、共有機能をこのFreeOredrsで公開するなら、Candidate グループ?に画像を保存できるようにする?


Candidate グループ?というのはアプリケーションストレージの領域にグループを定義して扱えるAPIを使って実現している?

FreeOrdersAEL010Candidate3.jpg
FreeOrdersAEL010Candidate3.jpg

グループが1つ以上、存在しないとエラー?になっていた?


あれ、何かエラーになっていたのだが?


動くのでこれを流用すればFreeOrderでチャーム呼び出しの共有可能とできる?


でも、グループを固定化で、グループの新規追加なしの環境として使いたいのだが・・・
⇒どのように改造する必要がある?

FreeOrdersAEL010Candidate3a.jpg
FreeOrdersAEL010Candidate3a.jpg

他のことやって、もう一回開くとエラーになる。なぜ?

FreeOrdersAEL010Candidate4.jpg
FreeOrdersAEL010Candidate4.jpg

FreeOrdersAEL010Candidate5.jpg
FreeOrdersAEL010Candidate5.jpg


共有
このアプリでは共有できません。

⇒なぜ?なにが足りない?チャームへ何か渡す指定が必要なの?

FreeOrdersAEL010Candidate6.jpg
FreeOrdersAEL010Candidate6.jpg

FreeOrdersAEL010Candidate6a.jpg
FreeOrdersAEL010Candidate6a.jpg

チャームから共有だすのに、まだ何がたりない?

FreeOrdersAEL010Candidate6b.jpg
FreeOrdersAEL010Candidate6b.jpg


画像ライブラリが共有?
⇒いいえ。

「コントラクト」でMetroスタイル・アプリのサンドボックスを乗り越える!
http://www.atmarkit.co.jp/fdotnet/chushin/readyforwin8app...
⇒ DataRequested が必要なそうだ。確認してみる。
FreeOrdersAEL010Candidate6c.jpg
FreeOrdersAEL010Candidate6c.jpg

ページは変わったが確かにない。
⇒追加する。
FreeOrdersAEL010Candidate6d.jpg
FreeOrdersAEL010Candidate6d.jpg

FreeOrdersAEL010Candidate6e.jpg
FreeOrdersAEL010Candidate6e.jpg


チャームで共有を使うには ItemDetailPage.xaml.cs に
OnNavigatedTO
OnNavigatedFrom
OnDataRequested
この3つがない!といけない。必要だ!?
FreeOrdersAEL010Candidate6f.jpg
FreeOrdersAEL010Candidate6f.jpg

コードをコピーするとビルドエラーになるので、using やクラスなどを追加してもまだエラーだ。
そしてここにたどり着いた。これが、前述したアプリケーションストレージと、Assets内にあるビルトイン画像をマージした表示ができない理由なのでは?2者択一となっているからだ。どちらか一方しか使えないと、なんか機能がこれを応用してできないことになる。
⇒ほんとはどうなのだろう?

FreeOrdersAEL010Candidate6g.jpg
FreeOrdersAEL010Candidate6g.jpg

こんな感じで複数のソースを紐付けれないか?


だめだ、FreeOrders05で中断。チャームの共有も今回省略する?


新たな方法を探す。FreeOrders06で始める。

一枚ものにする?


それとも、オーダーの候補にする Candidate order  すら、今回省略してしまうしかない?


Popup From AppBar
http://social.msdn.microsoft.com/Forums/en-US/winappswith...
⇒少し、いいかも!?★


IEでランチャーオープンする機能を先に追加する?


もう一度、ファイルにする?


今、何を優先すべきだ?別な考え方はない?


少し webサーフィン をgoogle エンジンでやってみる。

XAML ListView and GridView essentials sample
http://code.msdn.microsoft.com/windowsapps/ListViewSimple...
⇒リストビューだ。

Windows 8 アプリ開発者ブログ
http://blogs.msdn.com/b/windowsappdev_ja/

http://bitly/w8try


XAML ListView and GridView essentials sample
http://code.msdn.microsoft.com/windowsapps/ListViewSimple...
⇒リストビューだ。

データの共有と交換 (JavaScript と HTML を使った Metro スタイル アプリ)
http://msdn.microsoft.com/ja-jp/library/windows/apps/hh46...

File picker contracts sample
http://code.msdn.microsoft.com/windowsapps/File-picker-ap...
C:\Users\user1\Downloads\File picker contracts sample\C#

CollectionViewSource google

【WPF】CollectionViewSourceはCollectionViewのプロキシ。
http://pro.art55.jp/?eid=1139229
『・・・
3.Sourceをグループ化することなく、View上でグループ化ができる。
・・・』とある。

HelpPage.g.i.cs ?

FreeOrdersAEL011FavoritItemsPage01.jpg
FreeOrdersAEL011FavoritItemsPage01.jpg

FreeOrdersAEL011FavoritItemsPage02.jpg
FreeOrdersAEL011FavoritItemsPage02.jpg

FreeOrdersAEL011FavoritItemsPage03.jpg
FreeOrdersAEL011FavoritItemsPage03.jpg

FreeOrdersAEL011FavoritItemsPage04.jpg
FreeOrdersAEL011FavoritItemsPage04.jpg


FreeOrders の アプリバーのボタンから、grid中間形式のページではあるが、追加した1枚モノのxamlのページを開けた!初期化後、今は空でまっ黒だが、バックボタンが付いている。
そう、FavoritItemsPage.xamlへ飛べたのだ。これは、つまり、ListViewInteractionAEL4only4bの買い物カートの1枚ページのxaml、ScenarioOutput4.xamlへ制御を渡せる可能性が大きくなったことを示す。
⇒まだ、ぬかよろこびだ!あと少しだ!


 明日の朝はAELのチェックリストをWEBから登録する。締め切り日なのだ。
 コメント欄にこのzigsowのアドレスを明記してあるので、担当者は私の進捗を逐一見ることができるようにしてある。
 そう、開発のライブな進捗メモをチェックして担当者が見て、ヒントをくれる時代に早くなって欲しいものだ。そうするとアプリの登録数派もっと増えるはずだ。開発者からの質問はできない仕組みだ。
 担当者が疲れちゃうからだ。

今日はこのへんで、アンニョン。かっけ。2012/9/4 19:45

------------2012/9/5 9:38 add start -------------------------------------
さあ、合体開始だ。


エラー 3 リソース "TitleStyle" を解決できません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext02\FreeOrders\MainPage.xaml 154 73 FreeOrders
エラー 6 リソース "SeparatorStyle" を解決できません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext02\FreeOrders\MainPage.xaml 200 26 FreeOrders
エラー 7 リソース "SeparatorStyle" を解決できません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext02\FreeOrders\MainPage.xaml 203 27 FreeOrders
エラー 4 リソース "H1Style" を解決できません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext02\FreeOrders\MainPage.xaml 156 61 FreeOrders
エラー 5 リソース "FooterStyle" を解決できません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext02\FreeOrders\MainPage.xaml 195 17 FreeOrders


エラー 1 名前 "PhotoDataSource" は名前空間 "using:FreeOrders.Data" に存在しません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext02\FreeOrders\FavoritItemsPage.xaml 22 13 FreeOrders
エラー 2 名前 "PhotoDataSource" は名前空間 "using:FreeOrders.Data" に存在しません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext02\FreeOrders\FavoritItemsPage.xaml 34 9 FreeOrders
エラー 3 'SuspensionManager' に 'RegisterFrame' の定義がありません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext02\FreeOrders\App.xaml.cs 60 35 FreeOrders

<!--アプリケーション固有のリソース -->
<Style x:Key="TitleStyle" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe UI Light" />
<Setter Property="FontSize" Value="16" />
</Style>
<Style x:Key="H1Style" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe UI Semilight" />
<Setter Property="FontSize" Value="26.667" />
<Setter Property="Margin" Value="0,0,0,25" />
</Style>
<Style x:Key="SeparatorStyle" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="9" />
</Style>
<Style x:Key="FooterStyle" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Margin" Value="0,8,0,0" />
</Style>
<x:String x:Key="AppName">FreeOrders</x:String>
</ResourceDictionary>

ビルドエラーがでたので、これらのコードや、下図の通りファイルを統合した。
FreeOrdersAEL011FavoritItemsPage05.jpg
FreeOrdersAEL011FavoritItemsPage05.jpg

入れ込み方がまずい?


このビルドエラーはとりにくそうだ?


入れ込み方を少し変えてみる。FreeOrders05ContinueNext02系はここで終了だ。
変えたをFreeOrders05ContinueNext03系で始める。

FreeOrders05ContinueNext → FreeOrders05ContinueNext02(中断)
FreeOrders05ContinueNext → FreeOrders05ContinueNext03(別法で開始)

こんな感じでプロジェクトフォルダことコピーして、フォルダ名を変えて試している。
なので、ものすごい添え字付の亜種のプロジェクトが多数存在した状態だ。

FreeOrdersAEL011FavoritItemsPage06.jpg
FreeOrdersAEL011FavoritItemsPage06.jpg

この図をみるとおり、xamlはずして最少構成をみつけながらの移植作業だ。
パボなので
時間がかかる、
試しながら、確認するしかない?
⇒  SDKのサンプルにいいものがあっても、素人の言葉で例えて言えば、
異なる土台の上で動いているので、土台の種類が違うと上物をどうやって移植していいかわからないのだ。
⇒SDK1枚ものテンプレーで動いているアプリをVS既定のGridテンプレート上に部分移植する、やり方がわからない。期限がなければ苦にはならず、あれこれ試すのも楽しいが、期限があるので、あせる、あせる。

でも、やり方が見つかれば、Windows ストア アプリの登録ラッシュが始まる?


そう、ラッシュになっても個人作コンテンツを1つ1つマイペースで増やせばいいのだ!?

--------2012/9/5 am 10:50 add --------------------------
http://zigsow.jp/portal/own_item_detail/205293/



ItemDetailPage1.xamlをFreeOredersに追加してみた。
アップバーから飛んで表示することができたFavoritItemsPage.xamlと比較するためだ。
FavoritItemsPage.xamlにはいろいろ仕込みが最初あったものをEntertainment Photo2テンプレートから流用し、
ビルドエラーをとって表示できるまで、コメントアウトしたシンプルではないものだからだ。
シンプルなItemDetailPage1.xamlから表示する方法を探していく。

FreeOrdersAEL012addItemDetail01.jpg
FreeOrdersAEL012addItemDetail01.jpg

←左が飛んで表示されるもの
右が飛んで表示されないもの→
違いはなんだ?
FreeOrdersAEL012addItemDetail01a.jpg
FreeOrdersAEL012addItemDetail01a.jpg

←左が飛んで表示されるもの
右が飛んで表示されないもの→
違いはなんだ?

下波ビルドエラー?が出でいる方が実際に起動すると表示されるのはなぜ?

FreeOrdersAEL012addItemDetail01b.jpg
FreeOrdersAEL012addItemDetail01b.jpg

なぜ飛ばない?
これだけ?
FreeOrdersAEL012addItemDetail01c.jpg
FreeOrdersAEL012addItemDetail01c.jpg

飛ばなかった原因はイベントハンドラ違いでした。

上図の大きな矢印を見て欲しい。
アイテムの詳細ページではFliveView内にコンテンツを置くようだ。
かつ、コンテンツdataのテンプレートを使ってる。これにより行間などが、コンテンツの数が増えてもきれいに調整されて表示する?
⇒”追加の列は、このテンプレートから作成されます”とあるが、3階層最下段のアイテムページに列があった?
画面構成を思い浮かべると、左に画像、右にリストのような1列のプロパティ群。
⇒つまり、この右を2列以上にできる?


できない?数が増えたらテンプレートが自動で列を増やせるだけ?だから、scrollviewerでラップしている?


個の空のアイテム詳細のページを買い物カートのように構成できる?


できない?


FlipView内でコンテンツの配置を決める方法は?


FlipViewというのは3階層最下段のアイテムページ、次アイテム、前アイテムを画面両端中央の▲ボタンのタップでフリップめくりできるビューなので
内部の配置は、今はDataTemplateが取り仕切っている。
⇒つまり、DataTemplateの中身を変化させると、FlipView内でコンテンツの配置を決めることができるのでは?


⇒ここで、Windows ストアアプリの画面構成に従えばよいのでは?


コンテンツの隙間間隔だけ?


いや、3階層最下段のアイテムページは次アイテム、前アイテムへ画面両端中央の▲でフリップできないといけない?
⇒でも、1ページものあるいは、とても大きなダイアログ画面であって、3階層最下段のアイテムページではないので、1つだけだから、フリップできないんだけど?


いろいろ、自問自答していると、あれ、
今試していることを、普通にシングルページに置き換えてもいいのでは?


さきに試してみる!
FreeOrdersAEL012addItemDetail01d.jpg
FreeOrdersAEL012addItemDetail01d.jpg

⇒なんだ、簡単にアップバーのボタンクリックからBasicPage1に飛べました。
難しく考えていた?

あとは、SDKの部分移植だ!
これが難しい?

FreeOrdersAEL012addItemDetail01e.jpg
FreeOrdersAEL012addItemDetail01e.jpg

左が移植先の構成で、右が移植もとのSDKだ。
RowDefinition として VisuslStateManager の定義をしている場合としていない場合の比較となった?


</common:LayoutAwarePage>はWindows ストアのルールを強制するもの?なんだろう?




移植元にはGridに
x:Name="LayoutRoot"
x:Name="ContentRoot"
と名前を付けている。これは一枚モノアプリテンプレートを使ったから?


1枚モノアプリだから?


プログラム内部で名前を意識して使う必要があったから?


一方、移植先には名前がやたらと省略されているのは、Gridテンプレートアプリ内から呼び出すこともあると考えて、
わざと名前を省略してある?


そもそもWindows Store アプリはBlendと同じでコントロールの名前を省略するのが標準だから、名前が付いていない?


Visual Studioならデフォルトの名前を付けるのがデフォルトだ。

さて、どうやって切り出して、移植する?

FreeOrdersAEL012addItemDetail01f.jpg
FreeOrdersAEL012addItemDetail01f.jpg

Content の +<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" Grid.Row="1" ZoomMode="Disabled">
を丸ごとコピペする
FreeOrdersAEL012addItemDetail01g.jpg
FreeOrdersAEL012addItemDetail01g.jpg

外部のdataや
MainPageを意識している。
だから、コントロールの名前がていねいにつけてあった?
どこかで、使っている?


Content のScrollViewerの内部をを丸ごとコピペする
⇒これ失敗。やめてコピー元内容をScenarioOutput4.xamlの内の以下に変更。
GridView x:Name="FlavorGrid" ・・・
GridView x:Name="FixinsGrid" ・・・
TextBlock x:Name="CustomCarton"・・・
に変更。いっぱいビルドエラーになるので、
ListViewInteractionのSampleDataフォルダごとFreeOrders内にコピーしてプロジェクトに参加。
ListViewInteractionのApp.xamlの
Scenario #1 ResourcesのxamlのTemplateを
StoreFrontTileTemplate
StoreFrontTileStyle
StoreFrontGridItemsPanelTemplate
SmallContentTextStyle
DescriptionTextStyle
ContentFontFamily

FreeOrdersのApp.xamlへコピーする
とビルドエラーがなくなった。
FreeOrdersAEL012addItemDetail01h.jpg
FreeOrdersAEL012addItemDetail01h.jpg

実行すると以下のエラー。

FreeOrders.exe!FreeOrders.App.InitializeComponent.AnonymousMethod__d(object sender, Windows.UI.Xaml.UnhandledExceptionEventArgs e) 行 50 + 0x20 バイト C#

((SampleDataGroup)group).UniqueId 型または名前空間の名前 'SampleDataGroup' はこのスコープ内で有効ではありません。
FreeOrdersAEL012addItemDetail01i.jpg
FreeOrdersAEL012addItemDetail01i.jpg

でもこのエラー、RP、CPの時に出たーエラーでは?RTMして直ったやつ?
SDKもRTM版になっているはずだけど?
他の原因?
FreeOrdersAEL012addItemDetail01j.jpg
FreeOrdersAEL012addItemDetail01j.jpg


App.g.i.cs
これ読みこんだら、それ以後動かなく
なったような?
すべて無視して、バックアップして、
フォルダ名バージョンを変える!
FreeOrders05ContinueNext03からFreeOrders05ContinueNext04へ変更して続行する。
FreeOrdersAEL012addItemDetail01k.jpg
FreeOrdersAEL012addItemDetail01k.jpg

これは確か、
Entertainment Photo2テンプレート
のチャーム共有の実装がうまくできずにあきらめたときのだ。
なぜ、awaitの警告が今頃出た?
ビルドエラーがなくならないと出ないエラー?
他のエラーが多くて気づかなかった?
FreeOrdersAEL012addItemDetail01L.jpg
FreeOrdersAEL012addItemDetail01L.jpg


SuspensionManagerがSDKでは1つ少ないのは?
SDKのMainPage.xaml.csはFreeOrdersでは\App.xaml.csへ移った?

FreeOrederの呼び出しページItemDetailPage.xaml.csで、awaitがある.
Entertainment Photo2の呼び出しページMainPage.xaml.csで、awaitがある.

さて、この実行時のエラーは表示するデータソースを確認し、修正すれば出なくなる?
FreeOrdersAEL012addItemDetail01m.jpg
FreeOrdersAEL012addItemDetail01m.jpg

FreeOrdersAEL012addItemDetail01n.jpg
FreeOrdersAEL012addItemDetail01n.jpg

#if DISABLE_SAMPLE_DATA
internal class SampleDataSource { }
#else
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
#endif
この意味は?
⇒いま、internal class SampleDataSource { }が、FreeOrder内の所有埋め込み初期画像群とけんかしている?



この実行時エラーの行き詰まりは、ListViewInteractionからコピーしてきたFreeOrderの
C:\Users\user1\Documents\Visual Studio 2012\Projects\ListViewInteractionAEL4only4c\SampleData\Images
でなく、C:\Users\user1\Documents\Visual Studio 2012\Projects\FreeOrders05ContinueNext04\FreeOrders\Assets
の画像PNGを読み込み表示するように変更すれば、勝手にエラーがなくなるのでは?


MSDN > ホーム > Windows 8 アプリ開発体験テンプレート
http://msdn.microsoft.com/ja-jp/jj556277.aspx
の新作をチェックしてみる。2012/9/5 16:24



一旦追加したものをFreeOrderプロジェクトから除外したり、利用しているところをコメントアウトしまくった。
でもビルドエラー取れても実行時のエラーとなっていた。
最後に、
ListViewInteractionのApp.xamlの
Scenario #1 ResourcesのxamlのTemplateを
StoreFrontTileTemplate
StoreFrontTileStyle
StoreFrontGridItemsPanelTemplate
SmallContentTextStyle
DescriptionTextStyle
ContentFontFamily

コメントアウトすると実行時エラーがでなくなった。
どうやら、スタイルの中にCPやRP系のものを呼び出しているものがある?★★★

⇒この状態をFreeOrders05ContinueNext04cutandgoNGでバックアップ保存した。
⇒FreeOrders05ContinueNext04は元の実行時エラーまで戻した。



FreeOrders05ContinueNext04cutandgoNG
を使って、実行時のエラーの犯人捜しをした。

StoreFrontTileTemplate
StoreFrontTileStyle
StoreFrontGridItemsPanelTemplate

SmallContentTextStyle★★★★★★★★★★★これが犯人だ。
中でこれをよんでいるが、後行で定義したのがいけない?
⇒そうでした!
ContentFontFamily★★★★★★★
SmallContentTextStyle★★★★★★
この順に定義したら実行時エラーが消えました。
⇒しかし、App.g.i.csが変更されました。が出て、
すべて適用するとApp.g.i.csがVSのタブで開いた状態となった。
これを閉じるて、再実行しても、出なくなった。

DescriptionTextStyleもコメントイン後、
実行時のエラーがでなくなったので、すべての修正分が有効となりました。
FreeOrders05ContinueNext04cutandgoNGOKとバックアップ名を変更した。
FreeOrdersAEL012addItemDetail01o.jpg
FreeOrdersAEL012addItemDetail01o.jpg

FreeOrdersAEL012addItemDetail01p.jpg
FreeOrdersAEL012addItemDetail01p.jpg

また、別のエラーだ。さっき先に進めようとしていた。データーソース回りでのエラーだ。

疲れました。今日はこの作業はここまで。アンニョン。かっけ。See you. 2012/9/5 18:31

---------------2012/9/6 am 7:30 add start ---------------------------------
いつも最新の状態にもどれるように、コピーしたもので作業を行う。
FreeOrders05ContinueNext04 - コピーをFreeOrders05ContinueNext05に改名して作業スタート。
FreeOrdersAEL013asyncawait01.jpg
FreeOrdersAEL013asyncawait01.jpg


asyncがSDK側に無い?
次のとび先でayanc?

SDKはこのあとMainPageへ飛び、FreeOrdersはFrameへ飛ぶ。
ページとフレームの違いとは何?

FreeOrdersAEL013asyncawait02.jpg
FreeOrdersAEL013asyncawait02.jpg


実際はinitializecomponentで初期化
したらすぐに出ている?
SDKはLoadイベントハンドラのアドレス登録したり必要なことしている。
同じことをFreeOrderはこの先で行う?


始めに表示する画面を表示したあとは、
メインページ、フレームともにユーザーの介入が入る。
ユーザーがクリックなど指定した先へ飛ぶのを待っている。

では、それぞれ、ユーザーのクリックがあって指定先へとんでから、
指定先が何をしているかを確認する。

メインページの初期かの後でやっていることを、
FreeOrderのGroupDetailPageのいずれかのページで確認する。
GroupDetailPageのいずれかのページといっても、とび先は1つで、UniqueIdでどのグループをしていしてやってきたのかがわかる。
this.Frame.Navigate(typeof(GroupDetailPage), ((SampleDataGroup)group).UniqueId);

しかし、今はフレームからグループでなくアイテムが直接選ばれた場合から、先に確認する。
var itemId = ((SampleDataItem)e.ClickedItem).UniqueId;

つまり、受け取り側のアイテム共通入口ページは、フレームトップまたはグループページの両方からよびだされてもいいように作りこまれているはずだ。
FreeOrdersAEL013asyncawait03.jpg
FreeOrdersAEL013asyncawait03.jpg


MainPage.xaml.cs と ItemDetailPage.xaml.cs での初期画面、メインページとアイテムページ
が呼び出された時に、走行してきたコードの部分とこれからページから出ていく時に走行するコード部分、
OSや非同期処理の完了通知が上がったときに反応するコードの部分などを確認する。

赤☆赤□の部分、つまり

Loadedは ロード時、

InitializeComponent()と後続部分は 初期化時、



DoNavigationは現在いるページから出ていく時、

NotifyUser はいつ?

override void OnNavigatedFrom はこのページにやってきた時、
OnDataRequested はチャーム共有で呼ばれた時、
override void OnNavigatedTo はこのページから出ていく時、
override void SaveState はアプリの状態が保存されたことをOSから知らされた時?、
override void LoadState はロードされた時、


メインページはLoaded でフレームはoverride void LoadState

もしかして、
メインページは同期だからLoaded?
フレームトップは非同期だからoverride void LoadState?

そう、いろいろ勝手に仮説を立てながらコードとその動きを確認して、仮説と理解を修正していく。
FreeOrdersAEL013asyncawait04.jpg
FreeOrdersAEL013asyncawait04.jpg


図を見る。

SDK(左)側を見る。

SDKはなぜnamespace名が変わるの?
変えているの?

ScenarioOutput4ページはロード時のコード(MainPage_Loaded相当)がないのはなぜ?

この2行がFreeOrderに抜けていたからエラー?
toppingsData = new ToppingsData();
storeData = new StoreData();

FreeOrder(右)側を見る。

this.が付いているのはなぜ?

BasicPage1()でやってはいけなかった?
FlavorGrid.ItemsSource = storeData.Collection.Take(6);//★先頭6はここできめていた。かつ、シナリオ4はここで2つのグリッドを作成している。
FixinsGrid.ItemsSource = toppingsData.Collection;

LoadState()でこれらをやるべきだった?
toppingsData = new ToppingsData();
storeData = new StoreData();
FlavorGrid.ItemsSource = storeData.Collection.Take(6);//★先頭6はここできめていた。かつ、シナリオ4はここで2つのグリッドを作成している。
FixinsGrid.ItemsSource = toppingsData.Collection;

あれ、もしかして、SDKって非同期で作られていない?

FreeOrdersAEL013asyncawait05.jpg
FreeOrdersAEL013asyncawait05.jpg

右のように変更し、実行。
おお、出たー!
戻りボタンがない?
重なって隠れてる?

でも、SDKの画像の引っ張り出し方とGridテンプレートの画像の引っ張り出し方が違うのでは?


FreeOrders05ContinueNext05OKとFreeOrders05ContinueNext05とFreeOrders05ContinueNext06を作成する。

表示できただけて選択できない。

MSDN > ホーム > Windows 8 アプリ開発体験テンプレート
http://msdn.microsoft.com/ja-jp/jj556277.aspx
⇒2012/9/6 am 10:37 新しいWindows 8 アプリ開発体験テンプレート が追加されているかチェック


おお、恵みの雨だ!

New
Touch De Po for Win8.zip
update
NewsReaderAppCSv1 (1).zip
Flat_Menu_Single_Layer (2).zip

早速ダウンロードして、仕込んだ!

Touch De Po for Win8から使ってみる


BasicPage.cs内に
『・・・ private void tile1_Tapped(object sender, TappedRoutedEventArgs e)
{
this.Frame.Navigate(typeof(ItemDetailPage), "tile1");
}
・・・』とある。

BasicPageはメインページ(親)に相当し、フレームトップもメインページ(親)相当する。

親が子を呼ぶときは、子をItemDetailPage.xamlのがやりやすい?


ItemDetailPage.xamlは上掲の通り、3層の最下層にあるページで、他の最下層のアイテムへフリップビューで移動できる仕組みが仕込まれたページだ。

(グリッド、フレームの場合)
3層の最上部のフレームトップや2層のグループページから子として、ItemDetailPage.xamlを呼ぶのが通常だ。
しかし、FreeOrder ではこの、3層の最下層にあるページItemDetailPage.xamlから、BasicPageや他のItemDetailPageをアプリバーから呼び出すことができた。

(BasicPage、メインページの場合)

BasicPageは親ページに使える。

BasicPageは子ページに使える?


使えたけど、使ってはいけない?


BasicPageから呼ぶ、子ページもItemDetailPageとすべき?


ItemDetailPageしか呼べない?


BasicPageからBasicPageを呼ぶことはできない?


用意されたテンプレートページの仕込まれた機能をコードで判断してから、どの種類のテンプレートのページから何の種類のテンプレートページを呼び出せるのか確認してみる?


非同期だから、疎結合だ。ならば、呼び出されたページ側ががんばって処理、どんなテンプレートページから呼ばれようとかまわないはずだ?


だから、ItemDetailPageからItemDetailPageも呼び出せる?


ただ、Windows ストアアプリのページ構成のルールがあるので、それに準拠させる必要がある。

さて、このような、内容はどこに記載されているのだろうか?

上掲のナビゲーション★★★★★★★に記載があるのだろうか?


『・・・ private void tile6_Tapped(object sender, TappedRoutedEventArgs e)
{
string key = "tile6";
var item = Data.TouchDePoFeatureSource.GetFeature(key);
item.Params.Add("howto", "こんな感じでパラメータを渡します");

this.Frame.Navigate(typeof(ItemDetailPage), key);
}
・・・』とある。
⇒{"An item with the same key has already been added."}
⇒アプリケーションバー内ではナビゲートの機能を持たしてはいけないとあったが、ここは画面上だからOKだ。
⇒このパラメータの作り方の部分を利用できそうだ。

FreeOrdersAEL013asyncawait06.jpg
FreeOrdersAEL013asyncawait06.jpg

FreeOrdersAEL013asyncawait07.jpg
FreeOrdersAEL013asyncawait07.jpg



左側がGrid のテンプレートでのデーターソースの取り込む仕掛けだ。
右側がSDKでのテンプレートでのデーターソースの取り込む仕掛けだ。
SDKではblendの自動data作成のテンプレートかなんかを使って作っている?

そう、この右側をやめて、左側の部分の表現を使って、データーソースの取り込む仕掛けを作りなおさないといけない。
どのグループをトッピングとし、どのグループをコアとするかなど、うまく取れて、FlipViewでスクロール付で表示されるようにしなければならない。

どうやれば早い、別に暫定的なシンプルアプリをつくり、BasicPage内にFlipViewコントロールを張り付け、データーソースをしていして、
データーバインドすればいい?

でも、VS2012rtmのblendでやってもいい?blendのはサンプルデータの自動作成機能だから、今回は利用しない方がいい?

FreeOrdersAEL013asyncawait08.jpg
FreeOrdersAEL013asyncawait08.jpg

エラー 2 メンバー "Resources" が認識されないか、アクセスできません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\w8simple\w8simple\BasicPage2.xaml 13 5 w8simple
エラー 3 型または名前空間名 'LayoutAwarePage' は名前空間 'w8simple.Common' に存在しません。アセンブリ参照が不足しています。 C:\Users\user1\Documents\Visual Studio 2012\Projects\w8simple\w8simple\obj\Debug\BasicPage2.g.i.cs 15 56 w8simple
エラー 4 型または名前空間名 'LayoutAwarePage' は名前空間 'w8simple.Common' に存在しません。アセンブリ参照が不足しています。 C:\Users\user1\Documents\Visual Studio 2012\Projects\w8simple\w8simple\obj\Debug\BasicPage2.g.i.cs 18 41 w8simple
エラー 5 型または名前空間名 'LayoutAwarePage' は名前空間 'w8simple.Common' に存在しません。アセンブリ参照が不足しています。 C:\Users\user1\Documents\Visual Studio 2012\Projects\w8simple\w8simple\BasicPage2.xaml.cs 22 62 w8simple
エラー 1 名前 "LayoutAwarePage" は名前空間 "using:w8simple.Common" に存在しません。 C:\Users\user1\Documents\Visual Studio 2012\Projects\w8simple\w8simple\BasicPage2.xaml 1 1 w8simple
⇒LayoutAwarePageはスタイルのxaml?

LayoutAwarePageはgridのテンプレートには最初から入っているが、ストアの新しいアプリテンプレート、
1枚もんを使った場合は入っていない?

だから、Touch De Po for Win8ではうまくいく?ItemDetailPage.xamlを利用していた?
⇒大は小を兼ねる?


確か、Winodw ストアアプリではADO.netがないというのをセミナーのときに聞いた。
だから、Silverlightと同じようにWCF RIAサービスを使う必要があると。

WCF RIAサービスを簡単に利用できるようにVSにはEntityFrameWorkがあったが、まだ、
Windows ストアアプリ作成中に利用できない。つまり、別なSilverlightでプロジェクトを作成し、
そのなかで、データーソースとしてよみとる部分を流用できる?


つまり、結構めんどくさいということ?接続部の変更は?


ならば、静的なデータ側を変更するほうが楽ではやい?

でも、非同期でないような?・・・・・

FreeOrdersAEL013asyncawait09.jpg
FreeOrdersAEL013asyncawait09.jpg

さっきより少し良くなってきた。
戻れたけど、選択できない。
通常閲覧するときはGridテンプレートのハブアンドスポークでみて、設計するときは1画面のコントロール画面を使うというスタイルはOK?


FreeOrdersAEL013asyncawait09a.jpg
FreeOrdersAEL013asyncawait09a.jpg

コアとトッピングが2つ表示され、単一選択、複数選択ができるようになった!
⇒いい感じだ!
⇒今回は静的dataを変える方法でいく!

そして、FreeOrderの紹介アプリという位置ずけで、AELエントリーする?


現在、FreeOrders05ContinueNext06a、次はFreeOrders05ContinueNext06b
"My "
"Application"

Candidate
Order
に変更
また、ページが大きくなってきたから別ページにする?
FreeOredes for 1st AEL
http://zigsow.jp/portal/own_item_detail/215302/


続き用の新ページ作成しました!


---------------- 2012/12/27 am 10:46 add ----------------------

facebook で dice can snap 紹介!


あんにょん
いいことあるわよ!
  • 購入金額

    0円

  • 購入日

    2012年09月03日

  • 購入場所

5人がこのレビューをCOOLしました!

コメント (1)

ZIGSOWにログインするとコメントやこのアイテムを持っているユーザー全員に質問できます。

YouTube の動画を挿入

YouTube の URL または動画の ID を入力してください

動画の ID が取得できません。ID もしくは URL を正しく入力してください。

ニコニコ動画の動画を挿入

ニコニコ動画の URL または動画の ID を入力してください

動画の ID が取得できません。ID もしくは URL を正しく入力してください。

ZIGSOWリンク挿入

検索対象とキーワードを入力してください

    外部リンクを挿入

    リンク先の URL とタイトルを入力してください

    URL を正しく入力してください。

    画像を挿入(最大サイズ20MB)

    画像を選択してください

    ファイルサイズが20MBを超えています

    別の画像を追加

    ZIGSOW にログイン

    ZIGSOW会員登録(無料)はこちらから