
2023 著者: Peter John Melton | [email protected]. 最終更新日: 2023-07-30 18:47
最後のチュートリアルでは、Windows Phone 7.5 Mango App開発シリーズの一部として、InputScopesについて学びました。このレッスンでは、電話のグローバルな位置、つまり緯度と経度を取得し、緯度と経度を都市、州、国の形式に変換するWebサービスを呼び出す方法について学習します。
Windows Phone 7にはGPSインターフェイスが装備されています。ウィンドウズ電話機7のロケーションサービスAPIと組み合わせると、それを使用して緯度および経度、すなわち電話機の現在位置を決定することができる。これらの緯度と経度の値を使用して、都市、州、国を決定することができます。私たちは都市、州、国を解決するためにWebサービスを使用します。 Webサービスは、インターネット上で実行されるメソッドと考えることができます。 Webサービスはサーバ上でホストされ、そのメソッドの名前は受け入れられるパラメータと返されるデータのタイプとともに公開されます。このようなWebサービスをインターネット経由で呼び出し、結果を取得し、得られたデータで意味のある何かを行うことができます。

「GPSDemo」のようなユニークな名前の新しいWindows Phone 7プロジェクトを作成します。次のxamlコードをコピーしてコンテンツパネルグリッドに貼り付けます。
HorizontalAlignment = "Left"
マージン= "12,23,0,0"
Name = "textBlock1"
テキスト= ""
VerticalAlignment = "Top"
幅= "423" />
高さ= "72"
HorizontalAlignment = "Left"
マージン= "275,59,0,0"
Name = "button1"
VerticalAlignment = "Top"
幅= "160"
Click = "button1_Click" />
上記のコードでは、空白のテキストブロックと、コンテンツプロパティがFind Meに変更されたボタンを作成します。 button1_Clickイベントに移動します。このコードを書く前に、参照を追加する必要があります。ソリューションエクスプローラでプロジェクトのタイトルを右クリックし、メニューから[参照の追加]を選択します。 「.Net」タブの下にスクロールし、コンポーネント名「System.Device」を選択します。 [OK]をクリックしてdllファイルをプロジェクトに追加します。次に、MainPage.xaml.csの最後のusingステートメントの後に次のコード行を入力します。
using System.Device.Location;
次に、Webサービスへの参照を作成します。これを行うには、プロジェクトタイトルを右クリックし、メニューから[サービス参照の追加]を選択します。 [アドレス]テキストボックスに「https://msrmaps.com/TerraService2.asmx」というURLを入力して「実行」をクリックします。 Webサービスがインターネット上で識別されると、そのWebサービスで利用可能な操作のリストが表示されます。シンプルな名前空間をServiceReference1からmyTerraServiceに変更し、[OK]ボタンをクリックします。 Visual Studioは、Webサービスを操作するために使用するプロキシクラスを作成します。これが完了すると、電話機のGPSインターフェイスで動作するように設定されます。 button1_Clickイベントに次のコード行をコピーして貼り付けます。
GeoCoordinateWatcher myWatcher =新しいGeoCoordinateWatcher();
var myPosition = myWatcher.Position;
二重緯度= 18.916;
二重経度= 72.9;
if(!myPosition.Location.IsUnknown)
{
latitude = myPosition.Location.Latitude;
longitude = myPosition.Location.Longitude;
}
myTerraService.TerraServiceSoapClientクライアント=新しいmyTerraService.TerraServiceSoapClient();
client.ConvertLonLatPtToNearestPlaceCompleted + =新しいEventHandler
client.ConvertLonLatPtToNearestPlaceAsync(新しいmyTerraService.LonLatPt(Lat =緯度、Lon =経度));
button1_Clickメソッドの最後の中括弧の後に次のメソッドをコピーして貼り付けます。
void client_ConvertLonLatPtToNearestPlaceCompleted(オブジェクト送信者、myTerraService.ConvertLonLatPtToNearestPlaceCompletedEventArgs)
{
textBlock1.Text = e.Result;
}
さて、コードが正確に何をしているかを見てみましょう。まず、myWatcherというFeoCoordinateWatcherクラスのオブジェクトを作成し、myPosition.Locationの緯度と経度プロパティにアクセスするだけで、緯度と経度にアクセスして、緯度と経度の値を取得します。次に、緯度と経度を渡すWebサービスへの非同期呼び出しを作成します。最後に、Webサービスの結果をテキストブロックに表示するだけです。非同期呼び出しは、Webサービスからの結果が受信されている間でも、アプリケーションが応答し続けるように行われます。

これで、Windows Phone 7.5のマンゴーアプリケーション開発シリーズが終了しました。
このチュートリアルシリーズのすべての部分へのリンク:
- Windows Phone 7.5マンゴアプリケーションの開発を学ぶ:パート1
- Windows Phone 7.5マンゴアプリケーションの開発:パート2(HelloWorldアプリケーション)
- Windows Phone 7.5アプリケーションの開発:第3回。変数、データ型、および値の割り当て
- Windows 7.5マンゴーアプリケーションの開発、第4回:if文
- Windows 7.5のマンゴーアプリケーションの開発、第5部:演算子、式、文
- Windows 7.5マンゴーアプリケーションの開発、第6回:Switch Statement
- Windows Phone Mangoアプリケーションの開発、第7回:反復のため
- Windows Phone 7.5のマンゴーアプリケーションを開発する際のシンプルなヘルパーメソッドの使用:第8回
- 文字列の操作:Windows Phone 7.5マンゴーアプリケーション開発 - パート9
- DateTimeを使って作業する:Windows Phone 7.5のマンゴーアプリケーション開発 - パート10
- クラスの理解と作成:Windows Phone 7.5のマンゴーアプリケーション開発 - パート11
- クラスで作業する:Windows Phone 7.5マンゴーアプリケーション開発 - パート12
- ネームスペースについて:Windows Phone 7.5マンゴーアプリケーション開発 - パート13
- オブジェクトの収集:Windows Phoneアプリケーション開発チュールリアル - パート14
- XAMLの理解:Windows Phoneアプリケーション開発チュートリアル - パート15
- Silverlightレイアウトコントロール:Windows Phoneアプリケーション開発チュートリアル - パート16
- XAMLイベントと入力コントロール:Windows Phoneアプリケーション開発チュートリアル - パート17
- イメージコントロールの操作:Windows Phoneアプリケーション開発チュートリアル - パート18
- スタイルとリソースを使って作業する:Windows Phoneアプリケーション開発チュートリアル - パート19
- スタイルとテーマリソースをコントロールに適用する:Windows Phoneアプリケーション開発チュートリアル - パート20
- XAMLページ間の移動:Windows Phoneアプリケーション開発チュートリアル - 第21部
- アプリケーションバーの操作:Windows Phoneアプリケーション開発チュートリアル - パート22
- カンバスをダイアログとして使用する:Windows Phoneアプリケーション開発チュートリアル - パート23
- さまざまなインプットスコープの追加:Windows Phoneアプリケーション開発チュートリアル - パート24
- GPS、ロケーションAPI、呼び出しWebサービス:Windows Phoneアプリケーション開発チュートリアル - 25。
推奨:
Silverlightレイアウトコントロール:Windows Phoneアプリケーション開発チュートリアル - パート16

Silverlightのレイアウトコントロールに関するこのチュートリアルでは、Windows Phone用のSilverlightで使用できる3つの主要なレイアウトコントロールについて検討しました。
XAMLイベントと入力コントロール:Windows Phoneアプリケーション開発チュートリアル - パート17

WPAのアプリケーションチュートリアルシリーズでXAMLについて学びました。今度は、レイアウトコントロールについてもっと学びましょう。ここに3つの主要なレイアウトコントロールがあります。
XAMLの理解:Windows Phoneアプリケーション開発チュートリアル - パート15

これまで、このWindows Phoneアプリ開発チュートリアルシリーズでは、C#ウィンドウで作業していました。最後の投稿では、オブジェクトのコレクションについて話しました。このチュートリアルでは、C#ウィンドウではなく、XAMLウィンドウでより多くの時間を費やしていきます。
イメージコントロールの操作:Windows Phoneアプリケーション開発チュートリアル - パート18

Windows Phone 7.5用のアプリケーションを開発する際にSilverlight for Windows Phoneでイメージコントロールを使用する方法詳細なチュートリアル。
スタイルとリソースを使って作業する:Windows Phoneアプリケーション開発チュートリアル - パート19

このチュートリアルでは、コントロールに独自の色を適用できるスタイルとリソースを使用します。