This Controller below demonstrates how to handle the ViewShowing and ViewShown events of the XafApplication class, to provide interaction between views.
Use the SourceFrame and TargetFrame properties of the event arguments for additional context information.
[C#]usingSystem;usingDevExpress.ExpressApp;namespaceWinWebSolution.Module{publicclassMainWindowController:WindowController{publicMainWindowController(){TargetWindowType=WindowType.Main;}protectedoverridevoidOnActivated(){base.OnActivated();Application.ViewShowing+=newEventHandler<ViewShowingEventArgs>(Application_ViewShowing);Application.ViewShown+=newEventHandler<ViewShownEventArgs>(Application_ViewShown);}voidApplication_ViewShowing(objectsender,ViewShowingEventArgse){if(e.SourceFrame!=null&&e.SourceFrame.View!=null&&e.SourceFrame.View.Id=="Party_PhoneNumbers_ListView"){FramephoneNumberFrame=e.TargetFrame;DetailViewphoneNumberDetailView=(DetailView)e.View;//...}}//ORvoidApplication_ViewShown(objectsender,ViewShownEventArgse){if(e.SourceFrame!=null&&e.SourceFrame.View!=null&&e.SourceFrame.View.Id=="Party_PhoneNumbers_ListView"){FramephoneNumberFrame=e.SourceFrame;DetailViewphoneNumberDetailView=(DetailView)phoneNumberFrame.View;//...}}protectedoverridevoidOnDeactivated(){Application.ViewShown-=newEventHandler<ViewShownEventArgs>(Application_ViewShown);base.OnDeactivated();}}}
[VB.NET]Imports Microsoft.VisualBasicImports SystemImports DevExpress.ExpressAppNamespace WinWebSolution.ModulePublicClass MainWindowControllerInherits WindowControllerPublicSubNew() TargetWindowType = WindowType.MainEndSubProtectedOverridesSub OnActivated()MyBase.OnActivated()AddHandler Application.ViewShowing, AddressOf Application_ViewShowingAddHandler Application.ViewShown, AddressOf Application_ViewShownEndSubPrivateSub Application_ViewShowing(ByVal sender AsObject, ByVal e As ViewShowingEventArgs)If e.SourceFrame IsNot NothingAndAlso e.SourceFrame.View IsNot NothingAndAlso e.SourceFrame.View.Id = "Party_PhoneNumbers_ListView"ThenDim phoneNumberFrame As Frame = e.TargetFrameDim phoneNumberDetailView As DetailView = CType(e.View, DetailView)'...EndIfEndSub'ORPrivateSub Application_ViewShown(ByVal sender AsObject, ByVal e As ViewShownEventArgs)If e.SourceFrame IsNot NothingAndAlso e.SourceFrame.View IsNot NothingAndAlso e.SourceFrame.View.Id = "Party_PhoneNumbers_ListView"ThenDim phoneNumberFrame As Frame = e.SourceFrameDim phoneNumberDetailView As DetailView = CType(phoneNumberFrame.View, DetailView)'...EndIfEndSubProtectedOverridesSub OnDeactivated()RemoveHandler Application.ViewShown, AddressOf Application_ViewShownMyBase.OnDeactivated()EndSubEndClassEndNamespace