0
我的應用程序有一個簡單的搜索屏幕。其中一個參數是「半徑」(與用戶當前位置的距離)。半徑選擇器綁定到ViewModel上的「Radius」屬性。WinRT中的對話服務/ MVVM架構中的自定義模式對話框
視圖模型被監聽在RADIUS屬性更改,當它改變時,如果用戶之前沒有選擇自己的位置,我想調用對話服務。
因此,我希望應用程序使用MVVM Light的messenger服務來偵聽來自ViewModel的消息,並且如果它收到消息「selectlocation」,它應該顯示一個「位置選擇器」UI作爲模式對話框。
使用MessageDialog很容易。不知何故,它創建了它的用戶界面,並將其覆蓋在屏幕上的任何位置。我該怎麼做呢?但是有完全定製的模態對話框?
我可以在頁面內創建一個用戶控件和主機,然後讓頁面監聽消息,然後顯示用戶控件,但是,我更喜歡它在全局級別。
僞代碼,我想有一個對話服務,這是否:
void SelectLocation(onSuccessCallback, onCancelCallback)
{
Window.Current.ShowDialog(new LocationSelectorUserControl(onSuccessCallback, onCancelCallback));
{
幾乎一樣MessageDialog但自定義UI。
有沒有辦法做到這一點?
是的,我很努力地找到一種方法來在另一頁上分頁。 – krisdyson
有一些關於此的建議:http://stackoverflow.com/questions/14588952/adding-textbox-in-winrt-messagedialog – 2013-11-28 12:00:27