wpf - Slide navigation with user controls in MVVM -


i'm developping mvvm application in wpf. in project, have main window , many user controls. main window has used host user controls. set system can allow me navigate between different users controls slide effect. main window doesn't contain no navigation button. navigations buttons on different users controls. example, have button (button a) on user control a. when click button, switch user control user control b (with slide effect). user control b has navigation button too, button b. when click button b, switch user control "x" ("x" user control), etc... develop kind of "navigation service" in there function :

navigationservice.slideto(new usercontrolx(), directions.lefttoright); 

i know difficult have ideas or suggestions in way have work, while keeping mvvm model.

you can use prism region: prism msdn link

  1. create region in main window

    <contentcontrol prism:regionmanager.regionname="mainregion" x:name="mainregion" /> 
  2. use regionmanager navigate different user controls on click cammand of buttons

    var regionmanager = servicelocator.current.getinstance<iregionmanager>(); regionmanager.requestnavigate("mainregion", "usercontrolname");//good practice use qualified usercontrol name "namespace.usercontrolname" 
  3. for sliding effect try similar in user control(even can try different animation styles, sample):

    <usercontrol.triggers>     <eventtrigger routedevent="control.loaded">         <beginstoryboard>             <storyboard >                 <thicknessanimation duration="0:0:.8" storyboard.targetproperty="margin" from="1920,0,0,0" to="0" accelerationratio=".1"/>             </storyboard>         </beginstoryboard>     </eventtrigger> </usercontrol.triggers> 

hope helps ...


Comments

Popular posts from this blog

c# - Send Image in Json : 400 Bad request -

jquery - Fancybox - apply a function to several elements -

An easy way to program an Android keyboard layout app -