‫お帰りなさい｡
‫このビデオでは､ update zooとupdate animalボタンを追加します｡
‫まず､ このテキストに､ 例えば動物園を選んだり､ 動物を選んだりして､
‫更新してほしいのです｡
‫では､ その機能を作って､ コードの後ろに入りましょう｡
‫ということで､ 新しいメソッドを作って､ まあ､ この中でやっていこうと思います｡
‫プライベートボイド
‫選択した動物園をテキストボックスで表示する｡
‫かなり長い名前ですが､ まさにその通りです｡
‫だから､ テキストボックスにセレクトズーを表示してくれるんだ｡
‫そして､ 正しいコードをうまく実行するために､ 実は､ 関連する動物や動物園を表示するのに非常に似たものを使おうと思っています｡
‫実際に､ ここにあるshow Associated Animalsのエントリーをコピーして､ 差し込んでみましょう｡
‫だから､ クエリーはもちろん､ もっと短くなる｡
‫すべてを表示するのではなく､ 場所を表示したい｡
‫そこで､ IDがat zoo IDと等しいzooから場所を選択します｡
‫そしてもちろん､ この値は動物園のIDで､ これはリスト動物園の選択値です｡
‫だから､ そのコードはすべてほとんど同じです｡
‫さて､ ひとつだけ違うことがあります｡
‫関連する値のリストなどは更新しませんが､ やりたいことはテキストボックスを更新することです｡
‫そこで､ テキストボックス､ ドットテキストにアクセスし､ zooデータテーブルで更新する必要があります｡
‫そして今､ それが面白い｡
‫実はこれ､ 動物のデータ表ではないんです｡
‫それを動物園データテーブルと呼ぶことにする｡
‫そして､ その動物園のデータテーブルにアクセスすることができるようになりました｡
‫そして､ このデータ表は､ かなりC鋭利なものです｡
‫そうですね｡
‫そして､ それは何かを含んでいる､ まあ､ 複数の行を含んでいる｡
‫そこで､ rowsというプロパティがあります｡
‫そして､ 最初の行は､ Locationというデータ列で､ Capital LのLocationにしたいのです｡
‫そして､ 今度はそれが文字列に変換されるはずです｡
‫だから､ zooのデータテーブルは､ さっき言ったように､ 結構､ 見ているテーブルなんです｡
‫そして､ この選択された値､ つまり特定の1つの値があるので､
‫その場所に一番最初のエントリを持ちたいのです｡
‫そうだろ？
‫つまり､ この特定のエントリーを検索するのです｡
‫3つ目は､ IDが動物園のIDで､ これはユニークですよね？
‫IDはご存知の通りユニークです｡
‫だから､ これは1回だけの応募になるんです｡
‫だから､ ここではゼロを使えるんです｡
‫そこで､ テーブルの一番最初の項目､ 一番最初の行を教えてください､ そして､ その場所を教えてください､ と言うことができます｡
‫そして､ それを文字列に変換したり､ 文字列に変換してほしいのです｡
‫だから､ ここでこの方法を使えば､ 単純にそれを実行することができるんです｡
‫これにより､ クリック数に応じてテキストボックスを更新することができます｡
‫そして実際に選択されたZuneのテキストボックスを表示します｡
‫まあ､ もちろん､ まだメソッドを呼び出しているわけではないので､ 呼び出されることはありません｡
‫そこで､ ここをクリックしても､ ご覧のように何も起こりません｡
‫そしてそれは､ 私たちが動物園を実施しなかったこと､ 動物園の変更方法を調整しなかったことと関係があります｡
‫何ですか？
‫リスト動物園の選定はまさにあれを変えたのです｡
‫ここで､ 先ほど作成したメソッドを呼び出したいと思います｡
‫そうですね｡
‫しかも､ ショーとか､ 正確には何という名前なんでしょう｡
‫そこで､ zooとTextBoxを選択します｡
‫というわけで､ このメソッドを呼び出したいのです｡
‫リスト動物園から選定方法を変更しました｡
‫そこで､ ここではこのメソッドを呼び出し､ 選択した動物園をテキストボックスに表示します｡
‫では､ それを実行してみましょう｡
‫そこにいるのは､ 私たちです｡
‫カイロやベルリンをクリックすると､ テキストが常に更新されているのがわかります｡
‫それは完璧だ｡
‫これがあれば､ アップデート動物園の機能を実装することができますから､ まさに私が望んでいたことです｡
‫でも､ その前にちょっとしたチャレンジを｡
‫右のリストにも同じ機能を実装してください｡
‫動物リストでは､ 誰かがMonkeyを押したときに､ このテキストも更新されるようにしたいのです｡
‫だから､ どうぞそれを試してみてください｡
‫わかりました｡
‫そうだといいのですが｡
‫だから､ シンプルにするんです｡
‫先ほど作成したこのメソッドをそのままコピーします｡
‫そして､ アプリケーションを停止して､ テキストボックスに選択された動物が表示され､
‫選択されます｡
‫そして､ 今は場所ではなく､ 動物園からの名前で､ Zooではなく､ IDが動物IDになっている動物からの名前です｡
‫もちろん､ そのエントリーをここで調整する必要があります｡
‫そして､ リスト動物園ではなく､ リスト動物全リスト動物なのです｡
‫そして今度は場所ではなく､ 動物の名前を表示させたいのです｡
‫そして､ それ以外はすべて同じであるべきです｡
‫わかりました｡
‫ということで､ だいたいこんなところでしょうか｡
‫では､ そのコードを実行してみましょう｡
‫実際には､ 実行する機能が実装されていないため､ できません｡
‫しかし､ ご覧の通り､ こちらは実装されていません｡
‫では､ この機能をここのリストに実装してみましょう｡
‫そこで､ リストをダブルクリックします｡
‫そして､ ご覧のようにこのリストが追加されます｡
‫すべての動物の選択が変わった｡
‫そして､ ここでは､ 選択した動物をテキストボックスに表示ということにしています｡
‫よし､ ではもう一度やってみよう｡
‫そして､ そこに私たちはいます｡
‫ご覧のとおり､ タイガーが現れ､ カクレクマノミが現れ､ そのすべてがうまく機能しています｡
‫あとは､ フクロウ､ 動物園､ オウムをアップデートすることです｡
‫つまり､ タイプミスをしてしまったので､ 名前を変えたいとか､ まあ､ 市長が今はニューヨークではなく､
‫ニューヨークにしようと決めたので､ 何らかの理由で市の名前が変わってしまったとか､ そういうことです｡
‫そうそう､ そうしましょう｡
‫その機能を実装してみましょう｡
‫そして､ そのためには､ もう一度クエリーを実行する必要があります｡
‫そこで､ そのための新しいメソッドを作ってみましょう｡
‫では､ まずupdate zoo clickのメソッドについて説明します｡
‫だから実は､ 私は
‫この広告動物を動物園方式にコピーする｡
‫なぜなら､ 非常に似たコピーで､ 動物を追加するのではなく､ 動物園を更新するクリックになるからです｡
‫このupdate zooクリックメソッドが呼び出されたら､ こことは別のクエリを実行してzooを更新し､
‫その場所をIDがある場所に追加するのと同じにしたいのです｡
‫だから､ IDがあるところは動物園IDで｡
‫わかりました｡
‫だから､ 結構やりたいことがあるんです｡
‫場所を変えたいだけです｡
‫そして､ 場所は動物園の名前ですよね？
‫ここではその1つということですね｡
‫動物園
‫動物園テーブルを更新し､ IDが動物園IDで､ すでに動物園IDがあり､ 最後の動物園で､
‫現在位置がある場所に設定します｡
‫位置は "our "であるべきで､ ここで興味深いことに､ 私たちのテキストボックスは､ 実際には私のテキストボックスのドットテキストです｡
‫わかりました｡
‫と､ まあ､ そんなところでしょうか｡
‫関連する動物を見せるのではなく､ 動物園を更新していきたい｡
‫だから､ ショー・ゾーは呼び名だけで､ 他は全部同じでいいんです｡
‫動物の種類のボタンも更新する前に､ テストしてみましょう｡
‫動物ボタンでもいい｡
‫動物更新ボタン
‫では､ カイロを押してみましょう｡
‫それをカイロに変えてみよう｡
‫Oをつけるだけでアップデートです｡
‫更新ボタンが実装されていないため､ 何も起こりません｡
‫それでは､ メインウィンドウの例の更新ボタンに移動してみましょう｡
‫そしてここに､ update zoo clickとなるクリックイベントを追加して､ 再び実行できるようにします｡
‫そして､ アップデートボタンが本来の役割を果たすはずです｡
‫よし､ じゃあ今度はこっちを呼んでみようか｡
‫まあ､ 実際には､ Cairoを選択して､ Cairoに変更して更新してみましょう｡
‫そして､ ご覧のように､ こちらのリストが更新されました｡ カイロ､ あるいはベルリンは､ ベルリンと呼ばれるようになりました｡
‫女性名である「ベルリン」に変更したのです｡
‫そして､ 私たちは､ あるいはニューヨークは､ 先ほど言ったように､ 新しい組織と呼ぼうとします｡
‫新しい組織です｡
‫シティオブワークスの最新情報です｡
‫そこにいるのは､ 私たちです｡
‫ニューヨークにはサメやカクレクマノミやトラがいる｡
‫それはかなりすごいことです｡
‫ここはちょっと「World of Warcraft」みたいですね｡
‫では次に､ あなたへのちょっとした挑戦状です｡
‫ここのテキストボックスに入力された内容に基づいて､ 右側のリスト上の動物を更新する､
‫この動物の更新ボタンを実装してください｡
‫わかりました｡
‫ぜひ､ 試してみてください｡
‫ビデオをパスして､ 自分で試してみてほしい｡
‫ということで､ このアップデートズクリックをコピーして､ アップデートアニマルクリックと名付けようと思います｡
‫さて､ zooテーブルを更新する代わりに､ animalテーブルを更新したいと思います｡
‫そして､ そこで私は場所を変えたくないのです｡
‫名前を変えたい｡
‫動物IDに名前を付けるには？
‫では､ そのIDはどこにあるかというと､ 動物のIDです｡
‫まあね｡
‫ここの一番下にある｡
‫動物IDは､ 動物リストというか､ リストと呼ばれるものになるんですね｡
‫すべての動物
‫それです｡
‫そして､ テキストボックスは名前を持つべきです｡
‫だから､ これは名前になるんです｡
‫そして､ それ以外はすべて同じです｡
‫それでは､ もう一度実行してみましょう｡
‫さて､ 実は､ 実行する前に､ XAMLファイルに行って､ そのメソッドを実装してみましょう｡
‫そこで､ アップデートアニマルは､ ここに新たなクリックを設けることにしました｡
‫クリックはアップデートアニマルクリックと同じです｡
‫なるほど｡
‫あとはテストすれば完了するはずです｡
‫ちなみに､ 自分でもなんとかやってみたいと思っています｡
‫そこで､ 私たちは
‫サルを選んで､ モンキーとかサル更新動物とか言ってみよう｡
‫そして､ ほとんどの場合､ アップデートされているのですが､ 私たちにはそれが見えません｡
‫その理由は､ あなたにもわかるかもしれません｡
‫それは､ ここでは動物園のものを見せているので､ すべての動物を見せているわけではないからです｡
‫そうしてもう一度始めると､ 内部的には変化しているので､ すでにそこにサルがいるはずです｡
‫だから､ データベースは更新されているのですが､ 私たちはそれを見ていないので､ 猿のようなものなのです｡
‫モンキー
‫そして､ 今度はサルをサルに戻して､ まあ､ 1つだけにしておきましょう｡
‫なぜアップデートアニマルバモンキーがアップデートされるのか｡
‫そこで､ カクレクマノミをシンプルなクラウンバードに変えてみましょう｡
‫動物をアップデートしよう
‫雲雀を飼っています｡
‫ところで､ 新しい組織にはピエロの鳥がいますね｡
‫さあ､ すごくないですか？
‫ニューヨークにはピエロ鳥がいるから｡
‫それは､ 私が望むところです｡
‫わかりました｡
‫だから､ そうですね､ もうほとんど終わったと言えますね｡
‫もちろん､ まだまだ追加できるケースもありますし､ 機能の拡張なども可能です｡
‫しかし､ これらのクエリが何をするのか､ どのようにコマンドを実行するのか､ どのように調整するのか､ どのようにWPFに実装するのかを理解することが重要なのです｡
‫そして､ ご覧の通り､ WPFチュートリアルで学んだことを活かしています｡
‫これまで学習してこなかった､ データベースを利用する機能を追加実装しました｡
‫テーブルの使い方､ コードによる入力の上手な調整方法､ ボタンやテキストフィールドの使い方などを見てきましたね｡
‫そして､ まあ､ 一般的には､ あなたはここでアプリケーション全体を構築しています｡
‫ですから､ 今度はその知識を応用して､ 従業員のため､ あるいは思いついた仕事のために､ データベース・アプリケーション全体を構築することができるのです｡
‫そして､ 誰かが「A､ B､ C､ Dを入力できるデータベースが必要だ」と言うと､ 「わかりました､
‫できますよ」と｡
‫そして､ このチュートリアルに戻るだけで､ チェックアウトすることができます｡
‫これが更新の方法でした｡
‫これが井戸端会議などの方法だった｡
‫わかりました｡
‫だから､ この章の演習をなんとかこなした人は偉い｡
‫そうでない方も､ ご安心ください｡
‫もう今となっては､ この章を終えたら､ 自分で戻ってやってみればいいだけのことです｡
‫だから､ 自分でそれを作ってみてもいいんです｡
‫さて､ もちろんいつでも少しは行けるのですが､ 自分で作ってみると一番いいんです｡
‫ちなみに､ このSQLコマンドの話とか出てこなかったら､ いつでもググればいいんだよ｡
‫いつでもええんやで｡
‫それについて読んで､ 何が起こっているのかを少し理解するために､ 少し研究してください｡
‫Okey dokey
‫というわけで､ この章を楽しんでいただけたら幸いです｡
‫私たちはかなりクールな小さなアプリケーションを作りました｡
‫次の章では､ 私たちの生活を大きく改善することになるリンクをチェックアウトする予定です｡
‫だから､ アップデートや更新ではなく､ ここにデータがあると､ エラーが出て､ まあ､ なかなかわからないこともあるんです｡
‫素晴らしい｡
‫というわけで､ 次の章でお会いしましょう､ では｡