我有一个标题栏(有点像菜单)和4个片段(MAIN,A,B,C),其中MAIN应该是backstack的'main/root'片段.
我遇到的问题是当用户通过菜单进行例如MAIN> A> B> C.如果我只是使用backstack它将按相反的顺序进行,我不想要.无论用户如何导航到其中一个,我都需要返回按钮返回MAIN.

我当前的代码(这是错误的,它不在MAIN时退出应用程序,当前片段从其他非MAIN片段切换)看起来像这样:
private void SwitchFragment(Fragment pFragment)
{
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.main_fl_fragmentcontainer, pFragment);
if (_CurrentFragment == _Frag_Main)
ft.addToBackStack(null);
ft.commit();
_CurrentFragment = pFragment;
}
Run Code Online (Sandbox Code Playgroud) 我总是得到"名字xxx在yyy中不存在".我不明白为什么,我想我尝试了所有可能的组合.
我的所有cs文件,包括主窗口都在"Web_Media_Seeker_WPF"命名空间中
Converters.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;
namespace Web_Media_Seeker_WPF.WPFConverters
{
public class BoolToValueConverter<T> : IValueConverter
{
public T FalseValue { get; set; }
public T TrueValue { get; set; }
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value == null)
return FalseValue;
else
return (bool)value ? TrueValue : FalseValue;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return value != null ? value.Equals(TrueValue) …Run Code Online (Sandbox Code Playgroud)