为了账号安全,请及时绑定邮箱和手机立即绑定

UWP,从子帧导航

UWP,从子帧导航

C#
牛魔王的故事 2021-03-28 11:08:00
我有一个问题,因为几天可以摆脱。我正在尝试从子帧导航到另一个框架,事实是,我想我实际上是在导航到它,因为执行了C#代码,但是未加载框架的内容(例如Textblock等)...这是我的代码主框架:<ListView x:Name="listView1" IsItemClickEnabled="True" Grid.Row="1"    ItemClick="listView_ItemClickEvent">       <ListView.ItemTemplate>           <DataTemplate x:DataType="x:String">               <StackPanel Grid.Column="1" Padding="10 5">                   <TextBlock FontSize="20" Padding="0 5 0 0" Text="{Binding                        ProjCode}" Foreground="Black"/>                   <TextBlock Padding="10 5 0 5" Text="{Binding Nome}"                       Foreground="#636567" />               </StackPanel>               <TextBlock Name="lblID" Visibility="Collapsed"                    Text="{Binding id}"/>                                         </DataTemplate>        </ListView.ItemTemplate>    </ListView>    <Frame Name="DetailsFrame"  Foreground="{x:Null}" Grid.Column="1"                     BorderThickness="1,0,0,0" Height="5000">        <Frame.ContentTransitions>            <TransitionCollection />        </Frame.ContentTransitions>    </Frame>单击列表,将框架“ ProjectDetails”加载到框架“ DetailsFrame”上。它包含另一个listview:<ListView.ItemTemplate><DataTemplate x:DataType="x:String">        <Border BorderBrush="LightGray" HorizontalAlignment="Stretch" >            <Grid BorderBrush="Gray">                <Grid.ColumnDefinitions>                   ***                </Grid.ColumnDefinitions>                <Grid.RowDefinitions>                   ***                </Grid.RowDefinitions>            <TextBlock Text="{Binding Descrizione}"/>                <TextBlock />            <TextBlock Text="{Binding TempoTotale}"/>            <TextBlock Name="lblID" Text="{Binding ID}" Visibility="Collapsed" />            </Grid>        </Border></DataTemplate>当我单击列表时,从该框架(ProjectDetails)中,我需要用另一个框架更改为“ TaskDetails”。为此任务,我使用了此代码,但是正如我之前所说,实际的c#代码写在执行TaskDetail页面,但未加载Ttextblock等接口Frame.Navigate(typeof(TaskDetails));我应该怎么做才能解决这个问题?
查看完整描述

2 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

您应该ProjectDetails在内部加载,DetailsFrame并在移至TaskDetails页面时使用:


DetailsFrame.Navigate(typeof(TaskDetails));

代替 Frame.Navigate(typeof(TaskDetails));


或创建详细信息框的静态实例,并将其用于导航,如下所示:


在您的主页中:


public static Frame NavigationFrame; 

public MainPage()

{

   this.InitializeComponent();

   NavigationFrame = DetailFrame;

}

在您要执行导航的页面中,使用以下方法:


 MainPage.NavigationFrame.Navigate(typeof(SomeOtherPage));


查看完整回答
反对 回复 2021-04-10
?
慕的地10843

TA贡献1785条经验 获得超8个赞

不知道为什么或怎么做,但是我花了一段时间解决了问题,只是删除了“ TaskDetails”页面并创建了一个新的页面


查看完整回答
反对 回复 2021-04-10
  • 2 回答
  • 0 关注
  • 151 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信