关于路由事件,看了很多书籍,谈的大多是关于Button的事件传递,这其实并不难理解,但问题是如何实用化,后来仔细分析了微软的 Familyshow才算初见端倪。
好吧,现在边举例,边说明,首先创建一个主窗口。再创建4个自定义控件。值得一提的是,WPF里的自定义控件与窗口差别并不大,自定义控件只不过少了些窗口特有的放大缩小关闭等功能而已。
先看主窗口代码:
通过引用xmlns:local="clr-namespace:RoutedEventTest"加入了4个自定义控件,TurnToRanch 等属性项就是自定义路由事件。
隐藏代码为:
目的非常简单,比如我处于农场页面,点击牧场按钮时,会自动转到牧场页面,并且打开相应侧边栏的好友列表。也就是当点击按钮时,会触发应该出现的控件Visible而不该出现的控件则 Hidden。
看代码:
隐藏代码如下:
效果如下:
再来看看则边栏传值给左工作区:
控件代码:
隐藏代码:
效果如下:
因我是个初学者,且能够接触到的WPF真正有深度的教程非常少,不知道这样传值是不是很笨,还有望WPF高手能够指正。