C# SfNavigationDrawer上的棱镜区域适配器

C# SfNavigationDrawer上的棱镜区域适配器,c#,wpf,prism,regionadapter,C#,Wpf,Prism,Regionadapter,我正在尝试在Syncfusion导航抽屉()上实现RegionaAdapter 我看到它使用变量(对象)ContentView来显示视图,所以我写了以下内容: public class SfNavigationDrawerRegionAdapter : RegionAdapterBase<SfNavigationDrawer> { public SfNavigationDrawerRegionAdapter(IRegionBehaviorFactory regionBehav

我正在尝试在Syncfusion导航抽屉()上实现RegionaAdapter

我看到它使用变量(对象)ContentView来显示视图,所以我写了以下内容:

public class SfNavigationDrawerRegionAdapter : RegionAdapterBase<SfNavigationDrawer>
{
    public SfNavigationDrawerRegionAdapter(IRegionBehaviorFactory regionBehaviorFactory) : base(regionBehaviorFactory)
    {
    }

    protected override void Adapt(IRegion region, SfNavigationDrawer regionTarget)
    {
        if (region == null)
        {
            throw new ArgumentNullException(nameof(region));
        }

        if (regionTarget == null)
        {
            throw new ArgumentNullException(nameof(regionTarget));
        }

        region.Views.CollectionChanged += (s, e) =>
        {
            if (e.Action == NotifyCollectionChangedAction.Add)
            {
                foreach (FrameworkElement view in e.NewItems) { 
                    regionTarget.ContentView = view;
                }
            } 
            // in events Remove is never called but Reset is called after a Add action
        };
    }

    protected override IRegion CreateRegion()
    {
        return new SingleActiveRegion();
    }
}
公共类SFNavigationDroperRegionadapter:RegionAdapterBase
{
公共SFNavigationDroperRegionadapter(IRegionBehaviorFactory regionBehaviorFactory):基础(regionBehaviorFactory)
{
}
受保护的覆盖无效自适应(IRegion区域、SfNavigationDrawer区域目标)
{
如果(区域==null)
{
抛出新ArgumentNullException(nameof(region));
}
if(regionTarget==null)
{
抛出新ArgumentNullException(nameof(regionTarget));
}
region.Views.CollectionChanged+=(s,e)=>
{
if(e.Action==NotifyCollectionChangedAction.Add)
{
foreach(e.NewItems中的FrameworkElement视图){
regionTarget.ContentView=视图;
}
} 
//在事件中,从不调用Remove,但在Add操作后调用Reset
};
}
受保护的覆盖IRegion CreateRegion()
{
返回新的SingleActiveRegion();
}
}
此代码段执行以下行为:()当我在已加载的视图上单击“上一步”时,它不会更改ContentView中的视图(不调用CollectionChanged)

预期的行为是它应该显示视图

我怎样才能做到这一点


谢谢你的阅读

它是否完全没有被调用,或者只是使用了与
Add
不同的参数?@Haukinger在视图根本没有被访问时调用它。那么它就不会被触发。