EPR类企业管理系统

在我们现有系统基础上或全新开发,提供定制服务
为您的企业高效快速实施ERP,WMS,MES,CRM管理系统
全面管控物料仓库、销售业务、采购业务、仓库业务
生产过程、质量检验、组织架构、业务报表


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

如何:访问Bar Manager

当功能区界面被禁用时,WinForms应用程序使用Bar Manager来显示应用程序菜单(请参阅IModelOptionsWin.FormStyle),并显示嵌套的Frame工具栏。本主题描述如何访问Bar Manager。请参阅“如何:自定义动作控件”主题以了解如何自定义条形项目。

提示

DevExpress代码示例数据库(http://www.devexpress.com/example=E4027)中提供了完整的示例项目。

请按照以下步骤访问BarManager对象并自定义其设置:

  1. 创建一个新的控制器中的WinForms模块的控制器文件夹。该控制器在所有框架(包括嵌套框架)中自定义Bar Managers (请参见NestedFrame)。
  2. 重写Controller的OnActivated方法,并订阅Frame.TemplateChanged事件。
  3. TemplateChanged事件处理程序中,确保Frame.Template的类型为IBarManagerHolder。将模板强制转换为IBarManagerHolder类型,并使用IBarManagerHolder.BarManager属性访问BarManager对象。例如,您可以将BarManager.AllowCustomization属性设置为false,以禁止最终用户自定义栏。
  4. 停用Controller时,重写Controller的OnDeactivated方法并取消订阅TemplateChanged事件。
using System;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Win.Controls;
using DevExpress.XtraBars;
// ...
public class BarManagerCustomizationWindowController : Controller {
    protected override void OnActivated() {
        base.OnActivated();
        Frame.TemplateChanged  = Frame_TemplateChanged;
    }
    private void Frame_TemplateChanged(object sender, EventArgs e) {
        if (Frame.Template is IBarManagerHolder) {
            BarManager manager = ((IBarManagerHolder)Frame.Template).BarManager;
            manager.AllowCustomization = false;
        }
    }
    protected override void OnDeactivated() {
        Frame.TemplateChanged -= Frame_TemplateChanged;
        base.OnDeactivated();
    }
}

运行该应用程序以确保不允许自定义栏。

BarManager_AllowCustomization

转载保留此链接,注明出处