Xamarin:在Xaml中制作Rg插件弹出窗口?

时间:2018-09-10 17:05:07

标签: xaml xamarin xamarin.forms

尝试在Xaml中实例化弹出页面时,我遇到各种奇怪的错误。这是最令人烦恼的:

No property, bindable property, or event found for 'Content', or mismatching type between value and property.

这是显示弹出窗口的页面:

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns         ="http://xamarin.com/schemas/2014/forms"
             xmlns:x        ="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class        ="PopupPages.PopupBackingPage"
             xmlns:popup            ="clr-namespace:PopupPages"
             BackgroundColor="Transparent">
    <popup:PopupTest />
</ContentPage>

这是其背后的代码:

namespace PopupPages
{
    public partial class PopupBackingPage : ContentPage
    {

        public PopupBackingPage()
        {
            InitializeComponent();

        }

    }
}

以下是弹出页面本身,以xaml格式显示:

<?xml version="1.0" encoding="utf-8" ?>
<pages:PopupPage 
    xmlns="http://xamarin.com/schemas/2014/forms"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:pages="clr-namespace:Rg.Plugins.Popup.Pages;assembly=Rg.Plugins.Popup"
    xmlns:animations="clr-namespace:Rg.Plugins.Popup.Animations;assembly=Rg.Plugins.Popup"
    x:Class="PopupPages.PopupTest">
</pages:PopupPage>

这是弹出页面本身的代码:

namespace PopupPages
{
    public partial class PopupTest : Rg.Plugins.Popup.Pages.PopupPage
    {
        public PopupTest()
        {
            InitializeComponent();
        }
    }
}

这是怎么回事?我究竟做错了什么?这些都非常简单。

1 个答案:

答案 0 :(得分:1)

一个 var items = new XMLHttpRequest(); items.onreadystatechange = function() { //puts all the xml into the loadedList variable if (this.readyState == 4 && this.status == 200) { var xmlDoc = this.responseXML; loadedList = xmlDoc.getElementsByTagName("itm"); sortList(); } }; items.open("GET", "item-list-file.xml", true); items.send(); function sortList() { 本身就是一个页面,不能显示在Rg.Plugins.Popup中。要显示弹出页面时,请使用以下代码显示它们:

ContentPage

如果您要显示await PopupNavigation.Instance.PushAsync(new PopupTest()); ,请输入此代码。不需要底页,它也不能与PopupBackingPage页一起使用。

希望这会有所帮助!