UserControl全屏然后还原

我需要单击按钮的时候将UserControl全屏然后还原,全屏的时候将Window主页面隐藏掉

这个是在UserControl用户控件里面的按钮
="Right" Grid.Row="0" Grid.Column="3" Orientation="Horizontal">
            

是要在VM层实现吗?还是直接在界面层实现啊,界面层的话可以在usercontrol控件中写自定义事件,窗体注册usercontrol的自定义事件,然后button click的时候将自定义事件委托出去。