4

PhoneCallTask​​ Showが呼び出されると、確認が通知されます。ユーザーが「電話をかける」または「電話をかけない」ボタンをクリックしたかどうかを知る方法はありますか?

例えば

phoneCallTask.Cancel += () => { };

前もって感謝します

4

2 に答える 2

2

私はそれを行う方法についてラウンドアバウトを考え出しました。必要に応じて試すこともできます。

PhoneApplicationFrameには、シェルUIが起動されたときにトリガーされる2つのイベントハンドラーObscuredとUnobscuredがあります。

人が[通話]をクリックした場合、[あいまい]と[あいまいでない]の両方が交互に2回トリガーされます。また、[電話をかけない]をクリックした場合、それぞれが1回だけトリガーされます。したがって、カウントを維持することで、その人が「電話」をクリックしたかどうかを検出できます

ページのコンストラクターでこれを追加します。

(Application.Current as App).RootFrame.Obscured += OnObscured;
(Application.Current as App).RootFrame.Unobscured += OnUnobscured;

showを呼び出す前に、カウンターとフラグを初期化します

diallerState = 1;
isDial = true;  
pct.Show(); //pct = new PhoneCallTask();



void OnObscured(object sender, ObscuredEventArgs e)
        {
            if (diallerState == 3 && isDial == true)
            {
             //The user Clicked Dialled   
             diallerState = 0;
             isDial=false;
            }
            else
            if(isDial==true) diallerState++; 
}



 void OnUnobscured(object sender, EventArgs e)
        {
            if(isDial) diallerState++;
        }
于 2012-08-04T07:13:17.087 に答える
1

基本的に、PhoneCallTask​​はランチャーです。つまり、何も返さないはずであり、アプリケーションは実行時に状態を判別できません。したがって、答えはノーです。

于 2012-04-11T13:17:57.777 に答える