Windows Phone でタッチ可能な通知トップ バーを作成する方法は?
私はC#とWindows Phoneの世界に慣れていないので、私の質問には簡単な解決方法があるかもしれませんが、私はたくさんのグーグルでうまくいきませんでした。これが私の目的です。アプリ全体でタイマーを実行し、1時間ごとに通知情報のサービスを要求し、画面の上部に「通知バー」を表示します。情報を取得するのは簡単ですが、それらをページに表示したい場合、ここに私の問題があります:
1. システム トレイを使用して自分の情報を表示しました。それは機能しますが、進行状況表示バーのタッチまたはクリックイベントがないことがわかりました。App.xaml.cs の Touch.FrameReported にイベントを追加しても、システム トレイ領域に触れてもイベントは発生しません。
2. 次に、動的な方法を使用してそれを達成したい: 現在のページにテキスト ブロックを追加する 現在のページ ハンドラーを取得しましたが、現在のページ ハンドラーのタイプが PhoneApplicationPage であることがわかっている場合、ルート UI を取得できません要素 (すべてのページに「LayoutRoot」という名前のルート要素があります) また、reflect メソッドを使用して「LayoutRoot」プロパティを取得しようとすると、戻り値が null になります。
コードは次のようになります。
Type type = PhoneApplicationPageHandler.getType()<
//I checked,the type is my page's type
type.getProperty("LayoutRoot") or type.getField("LayoutRoot")
//they all return null
ところで: LayoutRoot はグリッドであり、私のページの .xmal ファイルに記述されています。
ここで、私のオプションは、すべてのページにデフォルト ページを継承させることです。このページでは、「タッチ可能なトップ バー」をシミュレートする 2 番目の方法を実現するメソッドを実装します。
しかし、このコーディングは醜いと思います。
だから、誰でも私に教えてもらえますか:1.タッチイベントをSystemTrayに追加する方法または2.xamlで記述されているUI要素のハンドラーを取得する方法ですが、そのページのPhoneApplicationPageタイプのハンドラーしかありません。