でイベントを非同期/ブロッキングコールに変換します(ただし、これは以前のI asked this questionですが、これはWindows Phone 7.1(Mango)のSilverlight 4とC#4で、System.Threading.Tasks
、await
以上。私は、第三者のライブラリがないネイティブのソリューション、例えばthisのような希望を再度求めています。Windows Phone 7(C#)
私は自分自身でライブラリを使用しています。特定のプロパティを取得するには、イベントを待つ必要があります。イベントはかなり早く発生します。私はそれを阻止的な呼び出しに包み込もうとしています。
基本的に、私はこれが最善達成することができるどのようにこの
string GetBarWithWait()
{
foo = new Foo();
foo.Initialized += OnFooInit;
foo.Start();
// Wait for OnFooInit to be called and run, but don't know how
return foo.Bar;
}
中に、
void Prepare()
{
foo = new Foo();
foo.Initialized += OnFooInit;
foo.Start();
}
string Bar
{
return foo.Bar; // Only available after OnFooInit has been called.
}
をオンにしたいですか?
あなたは今のWindows Phone 7用の 'Microsoft.Bcl.Async'をダウンロードすることができます - それはあなたと同じように非同期を可能にし、使用を待ちます期待 – Brendan