本文整理汇总了C#中Microsoft.Practices.Prism.Regions.Region.Activate方法的典型用法代码示例。如果您正苦于以下问题:C# Region.Activate方法的具体用法?C# Region.Activate怎么用?C# Region.Activate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Practices.Prism.Regions.Region
的用法示例。
在下文中一共展示了Region.Activate方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RemovingViewAlsoRemovesItFromActiveViews
public void RemovingViewAlsoRemovesItFromActiveViews()
{
IRegion region = new Region();
object model = new object();
region.Add(model);
region.Activate(model);
Assert.IsTrue(region.ActiveViews.Contains(model));
region.Remove(model);
Assert.IsFalse(region.ActiveViews.Contains(model));
}
示例2: ActivateNullViewThrows
public void ActivateNullViewThrows()
{
IRegion region = new Region();
Assert.ThrowsException<ArgumentNullException>(() => region.Activate(null));
}
示例3: ShowViewFiresViewShowedEvent
public void ShowViewFiresViewShowedEvent()
{
bool viewActivated = false;
IRegion region = new Region();
object model = new object();
region.ActiveViews.CollectionChanged += (o, e) =>
{
if (e.Action == NotifyCollectionChangedAction.Add && e.NewItems.Contains(model))
viewActivated = true;
};
region.Add(model);
Assert.IsFalse(viewActivated);
region.Activate(model);
Assert.IsTrue(viewActivated);
}
示例4: ActivateNullViewThrows
public void ActivateNullViewThrows()
{
IRegion region = new Region();
region.Activate(null);
}
示例5: ActivateNonAddedViewThrows
public void ActivateNonAddedViewThrows()
{
IRegion region = new Region();
object nonAddedView = new object();
Assert.ThrowsException<ArgumentException>(() => region.Activate(nonAddedView));
}
示例6: WhenNavigatingFromActiveViewWithNavigatinAwareDataConext_NotifiesContextOfNavigatingFrom
public void WhenNavigatingFromActiveViewWithNavigatinAwareDataConext_NotifiesContextOfNavigatingFrom()
{
// Arrange
var region = new Region();
var mockDataContext = new Mock<INavigationAware>();
var view1Mock = new Mock<FrameworkElement>();
var view1 = view1Mock.Object;
view1.DataContext = mockDataContext.Object;
region.Add(view1);
var view2 = new object();
region.Add(view2);
region.Activate(view1);
var serviceLocatorMock = new Mock<IServiceLocator>();
serviceLocatorMock.Setup(x => x.GetInstance<IRegionNavigationJournalEntry>()).Returns(new RegionNavigationJournalEntry());
var navigationUri = new Uri(view2.GetType().Name, UriKind.Relative);
IServiceLocator serviceLocator = serviceLocatorMock.Object;
RegionNavigationContentLoader contentLoader = new Mock<RegionNavigationContentLoader>(serviceLocator).Object;
IRegionNavigationJournal journal = new Mock<IRegionNavigationJournal>().Object;
RegionNavigationService target = new RegionNavigationService(serviceLocator, contentLoader, journal);
target.Region = region;
// Act
target.RequestNavigate(navigationUri, nr => { });
// Verify
mockDataContext.Verify(v => v.OnNavigatedFrom(It.Is<NavigationContext>(ctx => ctx.Uri == navigationUri && ctx.Parameters.Count() == 0)));
}
示例7: ActivateNonAddedViewThrows
public void ActivateNonAddedViewThrows()
{
IRegion region = new Region();
object nonAddedView = new object();
region.Activate(nonAddedView);
}
示例8: WhenTargetViewCreationThrowsWithAsyncConfirmation_ThenExceptionIsProvidedToNavigationCallback
public void WhenTargetViewCreationThrowsWithAsyncConfirmation_ThenExceptionIsProvidedToNavigationCallback()
{
var serviceLocatorMock = new Mock<IServiceLocator>();
var targetException = new Exception();
var targetHandlerMock = new Mock<IRegionNavigationContentLoader>();
targetHandlerMock
.Setup(th => th.LoadContent(It.IsAny<IRegion>(), It.IsAny<NavigationContext>()))
.Throws(targetException);
var journalMock = new Mock<IRegionNavigationJournal>();
Action<bool> navigationCallback = null;
var viewMock = new Mock<IConfirmNavigationRequest>();
viewMock
.Setup(v => v.ConfirmNavigationRequest(It.IsAny<NavigationContext>(), It.IsAny<Action<bool>>()))
.Callback<NavigationContext, Action<bool>>((nc, c) => { navigationCallback = c; });
var region = new Region();
region.Add(viewMock.Object);
region.Activate(viewMock.Object);
var target = new RegionNavigationService(serviceLocatorMock.Object, targetHandlerMock.Object, journalMock.Object);
target.Region = region;
NavigationResult result = null;
target.RequestNavigate(new Uri("", UriKind.Relative), nr => result = nr);
navigationCallback(true);
Assert.IsNotNull(result);
Assert.AreSame(targetException, result.Error);
}
示例9: WhenNavigationFromViewThatIsNavigationAware_OnlyNotifiesOnNavigateFromForActiveViews
public void WhenNavigationFromViewThatIsNavigationAware_OnlyNotifiesOnNavigateFromForActiveViews()
{
// Arrange
bool navigationFromInvoked = false;
var region = new Region();
var viewMock = new Mock<INavigationAware>();
viewMock
.Setup(x => x.OnNavigatedFrom(It.IsAny<NavigationContext>())).Callback(() => navigationFromInvoked = true);
var view = viewMock.Object;
region.Add(view);
var targetViewMock = new Mock<INavigationAware>();
region.Add(targetViewMock.Object);
var activeViewMock = new Mock<INavigationAware>();
region.Add(activeViewMock.Object);
region.Activate(activeViewMock.Object);
var serviceLocatorMock = new Mock<IServiceLocator>();
serviceLocatorMock.Setup(x => x.GetInstance<IRegionNavigationJournalEntry>()).Returns(new RegionNavigationJournalEntry());
var navigationUri = new Uri(targetViewMock.Object.GetType().Name, UriKind.Relative);
IServiceLocator serviceLocator = serviceLocatorMock.Object;
RegionNavigationContentLoader contentLoader = new Mock<RegionNavigationContentLoader>(serviceLocator).Object;
IRegionNavigationJournal journal = new Mock<IRegionNavigationJournal>().Object;
RegionNavigationService target = new RegionNavigationService(serviceLocator, contentLoader, journal);
target.Region = region;
// Act
target.RequestNavigate(navigationUri, nr => { });
// Verify
Assert.IsFalse(navigationFromInvoked);
}
示例10: WhenRequestNavigateAwayOnDataContextRejectsThroughCallback_ThenNavigationDoesNotProceed
public void WhenRequestNavigateAwayOnDataContextRejectsThroughCallback_ThenNavigationDoesNotProceed()
{
// Prepare
var region = new Region();
var view1DataContextMock = new Mock<IConfirmNavigationRequest>();
view1DataContextMock
.Setup(ina => ina.ConfirmNavigationRequest(It.IsAny<NavigationContext>(), It.IsAny<Action<bool>>()))
.Callback<NavigationContext, Action<bool>>((nc, c) => c(false))
.Verifiable();
var view1Mock = new Mock<FrameworkElement>();
var view1 = view1Mock.Object;
view1.DataContext = view1DataContextMock.Object;
var view2 = new object();
region.Add(view1);
region.Add(view2);
region.Activate(view1);
var navigationUri = new Uri(view2.GetType().Name, UriKind.Relative);
var serviceLocatorMock = new Mock<IServiceLocator>();
serviceLocatorMock.Setup(x => x.GetInstance<IRegionNavigationJournalEntry>()).Returns(new RegionNavigationJournalEntry());
IServiceLocator serviceLocator = serviceLocatorMock.Object;
RegionNavigationContentLoader contentLoader = new Mock<RegionNavigationContentLoader>(serviceLocator).Object;
IRegionNavigationJournal journal = new Mock<IRegionNavigationJournal>().Object;
RegionNavigationService target = new RegionNavigationService(serviceLocator, contentLoader, journal);
target.Region = region;
// Act
var navigationFailed = false;
target.RequestNavigate(navigationUri, nr => { navigationFailed = nr.Result == false; });
// Verify
view1DataContextMock.VerifyAll();
Assert.IsTrue(navigationFailed);
CollectionAssert.AreEqual(new object[] { view1 }, region.ActiveViews.ToArray());
}
示例11: WhenViewModelAcceptsNavigationOutAfterNewIncomingRequestIsReceived_ThenOriginalRequestIsIgnored
public void WhenViewModelAcceptsNavigationOutAfterNewIncomingRequestIsReceived_ThenOriginalRequestIsIgnored()
{
var region = new Region();
var viewModelMock = new Mock<IConfirmNavigationRequest>();
var viewMock = new Mock<FrameworkElement>();
var view = viewMock.Object;
view.DataContext = viewModelMock.Object;
var confirmationRequests = new List<Action<bool>>();
viewModelMock
.Setup(icnr => icnr.ConfirmNavigationRequest(It.IsAny<NavigationContext>(), It.IsAny<Action<bool>>()))
.Callback<NavigationContext, Action<bool>>((nc, c) => { confirmationRequests.Add(c); });
region.Add(view);
region.Activate(view);
var navigationUri = new Uri("", UriKind.Relative);
var serviceLocatorMock = new Mock<IServiceLocator>();
serviceLocatorMock
.Setup(x => x.GetInstance<IRegionNavigationJournalEntry>())
.Returns(new RegionNavigationJournalEntry());
var contentLoaderMock = new Mock<IRegionNavigationContentLoader>();
contentLoaderMock
.Setup(cl => cl.LoadContent(region, It.IsAny<NavigationContext>()))
.Returns(view);
var serviceLocator = serviceLocatorMock.Object;
var contentLoader = contentLoaderMock.Object;
var journal = new Mock<IRegionNavigationJournal>().Object;
var target = new RegionNavigationService(serviceLocator, contentLoader, journal);
target.Region = region;
bool firstNavigation = false;
bool secondNavigation = false;
target.RequestNavigate(navigationUri, nr => firstNavigation = nr.Result.Value);
target.RequestNavigate(navigationUri, nr => secondNavigation = nr.Result.Value);
Assert.AreEqual(2, confirmationRequests.Count);
confirmationRequests[0](true);
confirmationRequests[1](true);
Assert.IsFalse(firstNavigation);
Assert.IsTrue(secondNavigation);
}
示例12: Region
public void WhenNavigatingAndDataContextOnCurrentlyActiveViewImplementsINavigateWithVeto_ThenNavigationRequestQueriesForVeto()
{
// Prepare
var region = new Region();
var viewModelMock = new Mock<IConfirmNavigationRequest>();
viewModelMock
.Setup(ina => ina.ConfirmNavigationRequest(It.IsAny<NavigationContext>(), It.IsAny<Action<bool>>()))
.Verifiable();
var viewMock = new Mock<FrameworkElement>();
var view = viewMock.Object;
view.DataContext = viewModelMock.Object;
region.Add(view);
region.Activate(view);
var navigationUri = new Uri(view.GetType().Name, UriKind.Relative);
var serviceLocatorMock = new Mock<IServiceLocator>();
serviceLocatorMock.Setup(x => x.GetInstance<IRegionNavigationJournalEntry>()).Returns(new RegionNavigationJournalEntry());
IServiceLocator serviceLocator = serviceLocatorMock.Object;
RegionNavigationContentLoader contentLoader = new Mock<RegionNavigationContentLoader>(serviceLocator).Object;
IRegionNavigationJournal journal = new Mock<IRegionNavigationJournal>().Object;
RegionNavigationService target = new RegionNavigationService(serviceLocator, contentLoader, journal);
target.Region = region;
// Act
target.RequestNavigate(navigationUri, nr => { });
// Verify
viewModelMock.VerifyAll();
}
示例13: WhenNavigating_ThenNavigationRequestQueriesForVetoOnAllActiveViewsIfAllSucceed
public void WhenNavigating_ThenNavigationRequestQueriesForVetoOnAllActiveViewsIfAllSucceed()
{
// Prepare
var region = new Region();
var view1Mock = new Mock<IConfirmNavigationRequest>();
view1Mock
.Setup(ina => ina.ConfirmNavigationRequest(It.IsAny<NavigationContext>(), It.IsAny<Action<bool>>()))
.Callback<NavigationContext, Action<bool>>((nc, c) => c(true))
.Verifiable();
var view1 = view1Mock.Object;
region.Add(view1);
region.Activate(view1);
var view2Mock = new Mock<IConfirmNavigationRequest>();
var view2 = view2Mock.Object;
region.Add(view2);
var view3Mock = new Mock<INavigationAware>();
var view3 = view3Mock.Object;
region.Add(view3);
region.Activate(view3);
var view4Mock = new Mock<IConfirmNavigationRequest>();
view4Mock
.Setup(ina => ina.ConfirmNavigationRequest(It.IsAny<NavigationContext>(), It.IsAny<Action<bool>>()))
.Callback<NavigationContext, Action<bool>>((nc, c) => c(true))
.Verifiable();
var view4 = view4Mock.Object;
region.Add(view4);
region.Activate(view4);
var navigationUri = new Uri(view1.GetType().Name, UriKind.Relative);
var serviceLocatorMock = new Mock<IServiceLocator>();
serviceLocatorMock.Setup(x => x.GetInstance<IRegionNavigationJournalEntry>()).Returns(new RegionNavigationJournalEntry());
IServiceLocator serviceLocator = serviceLocatorMock.Object;
RegionNavigationContentLoader contentLoader = new Mock<RegionNavigationContentLoader>(serviceLocator).Object;
IRegionNavigationJournal journal = new Mock<IRegionNavigationJournal>().Object;
RegionNavigationService target = new RegionNavigationService(serviceLocator, contentLoader, journal);
target.Region = region;
// Act
target.RequestNavigate(navigationUri, nr => { });
// Verify
view1Mock.VerifyAll();
view2Mock.Verify(ina => ina.ConfirmNavigationRequest(It.IsAny<NavigationContext>(), It.IsAny<Action<bool>>()), Times.Never());
view3Mock.VerifyAll();
view4Mock.VerifyAll();
}
示例14: WhenNavigationFailsBecauseDataContextForActiveViewRejectsIt_ThenNavigationFailedIsRaised
public void WhenNavigationFailsBecauseDataContextForActiveViewRejectsIt_ThenNavigationFailedIsRaised()
{
// Prepare
var region = new Region { Name = "RegionName" };
var viewModel1Mock = new Mock<IConfirmNavigationRequest>();
viewModel1Mock
.Setup(ina => ina.ConfirmNavigationRequest(It.IsAny<NavigationContext>(), It.IsAny<Action<bool>>()))
.Callback<NavigationContext, Action<bool>>((nc, c) => c(false))
.Verifiable();
var view1Mock = new Mock<FrameworkElement>();
var view1 = view1Mock.Object;
view1.DataContext = viewModel1Mock.Object;
var view2 = new object();
region.Add(view1);
region.Add(view2);
region.Activate(view1);
var navigationUri = new Uri(view2.GetType().Name, UriKind.Relative);
var serviceLocatorMock = new Mock<IServiceLocator>();
serviceLocatorMock
.Setup(x => x.GetInstance<IRegionNavigationJournalEntry>())
.Returns(new RegionNavigationJournalEntry());
var contentLoaderMock = new Mock<IRegionNavigationContentLoader>();
contentLoaderMock
.Setup(cl => cl.LoadContent(region, It.IsAny<NavigationContext>()))
.Returns(view2);
var serviceLocator = serviceLocatorMock.Object;
var contentLoader = contentLoaderMock.Object;
var journal = new Mock<IRegionNavigationJournal>().Object;
var target = new RegionNavigationService(serviceLocator, contentLoader, journal);
target.Region = region;
RegionNavigationFailedEventArgs eventArgs = null;
target.NavigationFailed += delegate(object sender, RegionNavigationFailedEventArgs e)
{
if (sender == target)
{
eventArgs = e;
}
};
// Act
bool? isNavigationSuccessful = null;
target.RequestNavigate(navigationUri, nr => isNavigationSuccessful = nr.Result);
// Verify
viewModel1Mock.VerifyAll();
Assert.IsFalse(isNavigationSuccessful.Value);
Assert.IsNotNull(eventArgs);
Assert.IsNull(eventArgs.Error);
}
示例15: WhenParentViewWithoutScopedRegionGetsActivatedOrDeactivated_ThenSyncedChildViewIsNotUpdated
public void WhenParentViewWithoutScopedRegionGetsActivatedOrDeactivated_ThenSyncedChildViewIsNotUpdated()
{
var commonRegionManager = new RegionManager();
var nonScopedRegion = new Region { Name="MyRegion", RegionManager = commonRegionManager };
commonRegionManager.Regions.Add(nonScopedRegion);
var behaviorForScopedRegion = new RegionActiveAwareBehavior { Region = nonScopedRegion };
behaviorForScopedRegion.Attach();
var childActiveAwareView = new SyncedActiveAwareObject();
var region = new MockPresentationRegion { RegionManager = commonRegionManager };
var behavior = new RegionActiveAwareBehavior { Region = region };
behavior.Attach();
var view = new MockFrameworkElement();
region.Add(view);
RegionManager.SetRegionManager(view, commonRegionManager);
region.Activate(view);
nonScopedRegion.Add(childActiveAwareView);
nonScopedRegion.Activate(childActiveAwareView);
Assert.IsTrue(childActiveAwareView.IsActive);
region.Deactivate(view);
Assert.IsTrue(childActiveAwareView.IsActive);
}