我有一个问题,我不能禁用点击的ShellContent内FlyoutItem。更具体地说,我在FlyoutItem中放置了大量ShellContent,并选择将其显示为多个项目。
<FlyoutItem Title="Title" FlyoutDisplayOptions="AsMultipleItems">
<ShellContent Title="🔁 Сontinuous" ContentTemplate="{DataTemplate views:MainPage}" IsEnabled="True"/>
<ShellContent Title="🔔 Jingle Bells" ContentTemplate="{DataTemplate views:JingleBellsPage}" />
<ShellContent Title="💓 Heartbeat " ContentTemplate="{DataTemplate views:heartbeatPage}" />
<ShellContent Title="❤️ Love" ContentTemplate="{DataTemplate views:LovePage}" IsEnabled="False"/>
</FlyoutItem>
My FlyoutItem
我尝试禁用ShellContent的可点击性,它位于FlyoutItem中,IsEnable ="false",如上面的代码所示,但当我单击时,它仍然会转到页面。它不应该转到页面。如果我这样做,它会工作,但会有一个恼人的动画。
Working variant
如何为具有许多ShellContent的FlyoutItem执行此操作?
<FlyoutItem Title="Main Page">
<Tab IsEnabled="False">
<ShellContent ContentTemplate="{DataTemplate views:MainPage}"></ShellContent>
</Tab>
</FlyoutItem>
<FlyoutItem Title="Disco Page" IsEnabled="False">
<Tab>
<ShellContent ContentTemplate="{DataTemplate views:DiscoPage}"></ShellContent>
</Tab>
</FlyoutItem>
<FlyoutItem Title="Love Page">
<Tab>
<ShellContent ContentTemplate="{DataTemplate views:LovePage}"></ShellContent>
</Tab>
</FlyoutItem>```
1条答案
按热度按时间mrfwxfqh1#
是的,为ShellContent设置IsEnable是无用的。所以你可以在代码后面拦截navigate事件。考虑以下方式:
首先,为每个shellContent指定一个路由,
然后在AppShell.cs中
希望能成功。