2011-07-18 1 views
0

大学のWP7アプリケーションを作成しています。ユーザーはキャンパスバスのバスルートをすべて表示し、バスが到着したときとは別の時間を表示する押さえをクリックすることができます。プッシュピンボタン

Pushpin r1 = new Pushpin(); 
r1.Location = new GeoCoordinate(37.870805174152, -122.26761817932129); 
r1.Content = "R1"; 
map1.Children.Add(r1); 

これまでのところ、私は 上でこれらのバスの停留所の一部が異なるルートと重複していると、いくつかはしないでください:私のプログラムでは画鋲のひとつのサンプルは次のようになります

http://pt.berkeley.edu/bear_transit/map.php?route_checked=pを参照してください) 。私の質問は、私のプッシュピンのすべてのタップジェスチャーを処理する簡単な方法はありますか?なし各ピンのGestureService.GetGestureListener( "バスストップ")を書くか? 上記のリンクに示されているように、各停止は異なる時間を引き上げる必要があります。

あなたが持つかもしれないアイデアをありがとう:]

+0

オーバーラップするバス停はまったく同じ地上座標ですか? – ChristiaanV

+0

DataTemplateを使用し、Tapイベントをバインドします。 –

答えて

-1

あなたがデータを表すオブジェクトのコレクションを持っている場合、あなたは可能性があり、そのを通じて、単にループとあなたは一度だけ、追加のコードを記述する必要があるので、そこにアイテムを追加します。以下のような
何か:

foreach (var pinData in allPins) 
{ 
    map1.Children.Add(
     new PushPin 
      { 
       Content = pinData.Content, 
       Location = new GeoCoordinate(pinData.Latitude, pinData.longitude) 
      }); 
} 

がうまくいけば、あなたのアイデアを得ます。

マップ上に現在表示されている領域に基づいて適切なピンをロードするだけのロジックを追加することもできます。

+0

あなたは明確にできますか?私はWP20言語の初心者であり、VS2010も初心者です。 – mpassaglia

+0

@mpassagliaの回答が更新されました。これがもっと役立つことを願っ –