我对xaml和xamarin表格很相关。到目前为止,我发现它非常强大,但我缺乏经验,无法找到我正在尝试做的一些样本,就是把我带到这里。
所以我有一个listview,当“点击”该项目时,我希望有一个“弹出窗口”列出我可用的选项(可能在其他列表视图中有选项)。
在代码或xaml中,最好的方法是让控件显示在当前列表视图的顶部,并允许用户选择一个选项?
挑战显然不是选择一个选项(我知道该怎么做)。挑战是让控件出现在另一个控件之上,直到它被解除或在外面点击。我知道有一个选择器控件可以做一些类似的事情,但它不能控制内容和定位(除非我错过了一些东西)。
我希望显示选项列表的listview位于堆栈布局中,位于简单内容页面内。
感谢您的帮助。
答案 0 :(得分:2)
要使一个控件显示在另一个控件的顶部,您可以将它们放在网格中:
<Grid>
<StackLayout x:Name="YourListViewStackLayout">
</StackLayout>
<StackLayout x:Name="SomeAnotherControll" IsVisible="false">
</StackLayout>
</Grid>
因此,当您更改&#34; SomeAnotherControll&#34;的可见性时它将涵盖&#34; YourListViewStackLayout&#34;。
答案 1 :(得分:1)
最好的方法是在自定义控件和渲染器的帮助下创建自己的弹出窗口
如何做到这一点在以下帖子中描述: custom pop-ups
答案 2 :(得分:0)
我刚刚以Forms9Patch.ModalPopup
和Forms9Patch.BubblePopup
元素的形式将此功能添加到Forms9Patch库中。
对于您的用例,您将使用ListView的Selected
事件,并将Target
的{{1}}属性设置为ListView的Forms9Patch.BubblePopup
元素。
您可以在http://Forms9Patch.com或https://forums.xamarin.com/discussion/comment/185332/#Comment_185332了解详情。
GIF of Modal Popup http://buildcalc.com/forms9patch/Images/Modal-iOS.gif
GIF of Bubble Popup on iPhone http://buildcalc.com/forms9patch/Images/Bubble-iOS.gif
GIF of Bubble Popup on Android http://buildcalc.com/forms9patch/Images/Bubble-droid.gif