0
這是我的基本代碼什麼是切換從或退出formFlow到對話框中博特框架
的最佳途徑formFlow工作正常,並檢查,如果條件之後,就應該去別的部分,它在它的部分,但在其他部分寫這行代碼
await Conversation.SendAsync(activity,() => new AskMeAnything());
AskMeAnything是一個類實現Idialog。問題是,它再次去/調用formflow而不是跳到上面提到的對話框中。
我讀了關於IdialogStack,但無法理解如何刪除堆棧頂部的對話框或與之相關的東西。
我需要幫助移動到其他對話框,而無需循環到formflow。
感謝
感謝評論,只是想了解你,讓我說我創建了一個根dilaog並調用了一次子對話框,所以下一次,根對話框將在堆棧頂部,然後第一個子對話框將會在它下面,那麼我的新子對話框怎麼會被調用? ..任何示例或詳細的解釋將幫助 –
不,這是不正確的。當您使用「調用」或「轉發」方法從根對話框啓動子對話框時,子對話框將置於堆棧的頂部。所有消息都來自控制器,指向堆棧的頂部,在此操作之後將成爲子對話框。所以消息將不再在根對話框中處理。一旦對話完成後,您可以調用「完成」方法結束對話框,然後將子對話框從堆棧中取消,使根對話框成爲堆棧頂部。 –
謝謝Xeno - 如果你通過看到上面的圖片給出我的概率的解決方案,我會更加高興..我打電話給「makerootdialog」使用Conversation.sendasync()調用表單流。一旦表單流完成,我打電話給它的.Done()方法。根據新的請求,它會轉到其他部分(如圖所示),在那裏我使用Conversation.SendAsync(...)調用另一個對話框,但是再次調用Formflow。你能幫助我嗎? –