Как создать диалоговое окно с пользовательским содержимым, например Android, в Zebble для Xamarin?

Я хочу создать диалоговое окно для редактирования некоторого поля, и мне нужно создать собственный контент для диалогового окна и получить от него ответ, чтобы перезагрузить данные. Итак, я прочитал весь контент о диалогах и всплывающих окнах по ссылке ниже.

http://zebble.net/docs/alerts-and-dialogs

И затем я тестирую этот код:

На другой странице я хочу показать всплывающее окно:

await Nav.ShowPopUp<CustomeDialogPage>();

Моя пользовательская страница Zebble:

<z-Component z-type="CustomeDialogPage" 
         z-base="Page" 
         z-namespace="UI.Pages" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:noNamespaceSchemaLocation="../.zebble-schema.xml">

  <Stack CssClass="customedialog">
     <Button Text="OK" />
  </Stack>  

  </z-Component>

И затем я создаю таблицу стилей для этого

.customedialog {
    width: 300px;
    height: 100px;
    background: #ffffff;
    border: 2px;
    padding: 5px;
    margin-top: 100px;
}

но я не смог закрыть всплывающее окно или добавить для него заголовок, и я не знаю, как я могу получить результат. И это пример диалога, который я хочу использовать, как показано ниже:

введите здесь описание изображения


person JohnMax    schedule 14.04.2017    source источник
comment
Можете ли вы добавить черновик того, что вы ожидаете увидеть во всплывающем окне?   -  person Paymon    schedule 15.04.2017


Ответы (1)


Zebble предоставляет вам другие перегруженные методы всплывающих окон Nav, которые помогут вам в этом.

Хост-страница:

var result = await Nav.ShowPopup<TargetPage, SomeType>();
// Now you can use "result".

Кнопка закрытия всплывающей страницы:

...
await Nav.HidePopup(someResultValue);

Заметки:

  • SomeType может быть простым типом, например логическим или строковым, или сложным классом.

  • Тип объекта, возвращаемого всплывающим окном, должен соответствовать типу, ожидаемому родительской страницей хоста.

Вы можете ознакомиться с полной спецификацией здесь: http://zebble.net/docs/showing-popup-pages

person Paymon    schedule 28.04.2017