商信互联
本主题演示了在WinForms应用程序中使用OutlookStyleMainRibbonForm模板时,如何访问用于为OfficeNavigationBar根组切换上的过渡设置动画的过渡管理器。
完整的示例项目可从http://www.devexpress.com/example=T392403的DevExpress代码示例数据库中获得。
执行以下步骤来访问TransitionManager对象并自定义其设置。
using DevExpress.ExpressApp.Win.SystemModule;
using DevExpress.Utils.Animation;
//...
public class TransitionCustomizationController : WindowController
{
private OfficeNavBarTransitionController officeNavBarTransitionController;
private void OnCustomizeTransition(object sender, CustomizeTransitionEventArgs e) {
e.TransitionManager.Transitions[e.TransitionControl].TransitionType = new CombTransition();
}
protected override void OnActivated() {
base.OnActivated();
OfficeNavBarTransitionController officeNavBarTransitionController = Frame.GetController<OfficeNavBarTransitionController>();
if(officeNavBarTransitionController != null) {
officeNavBarTransitionController.CustomizeTransition = OnCustomizeTransition;
}
}
protected override void OnDeactivated() {
if(officeNavBarTransitionController != null) {
officeNavBarTransitionController.CustomizeTransition -= OnCustomizeTransition;
}
base.OnDeactivated();
}
public TransitionCustomizationController() {
TargetWindowType = WindowType.Main;
}
}
Imports DevExpress.ExpressApp.Win.SystemModule
Imports DevExpress.Utils.Animation
//...
Public Class TransitionCustomizationController
Inherits WindowController
Private officeNavBarTransitionController As OfficeNavBarTransitionController
Private Sub OnCustomizeTransition(ByVal sender As Object, ByVal e As CustomizeTransitionEventArgs)
e.TransitionManager.Transitions(e.TransitionControl).TransitionType = New CombTransition()
End Sub
Protected Overrides Sub OnActivated()
MyBase.OnActivated()
Dim officeNavBarTransitionController As OfficeNavBarTransitionController = Frame.GetController(Of OfficeNavBarTransitionController)()
If officeNavBarTransitionController IsNot Nothing Then
AddHandler officeNavBarTransitionController.CustomizeTransition, AddressOf OnCustomizeTransition
End If
End Sub
Protected Overrides Sub OnDeactivated()
If officeNavBarTransitionController IsNot Nothing Then
RemoveHandler officeNavBarTransitionController.CustomizeTransition, AddressOf OnCustomizeTransition
End If
MyBase.OnDeactivated()
End Sub
Public Sub New()
TargetWindowType = WindowType.Main
End Sub
End Class
运行该应用程序,以确保转换类型已更改。