EPR类企业管理系统

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


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

如何:自定义电子表格编辑器(SpreadSheet)

在模型编辑器中

本节将展示如何使用模型编辑器定制的电子表格属性编辑器的WinForms或ASP.NET项目

显示或隐藏编辑栏

SpreadsheetPropertyEditorASPxSpreadsheetPropertyEditor显示与公式栏(电子表格控制的WinForms / ASP.NET)。

在模型编辑器中,导航到“视图” | “视图”。<DetailView> | 物品| <PropertyEditor>节点并指定EnableFormulaBar属性以显示或隐藏编辑栏。

为详细信息视图指定MenuManagerType

请注意,SpreadsheetPropertyEditor菜单管理器包含一个Ribbon Ribbon控件BarsASPxSpreadsheetPropertyEditor菜单管理器仅包含一个Ribbon Ribbon控件

导航到视图| <DetailView> | 物品| <PropertyEditor>节点并设置编辑器的MenuManagerTypeWinForms / ASP.NET)。

在ASP.NET应用程序中,功能区控件以“单行模式”显示。若要更改功能区模式或在代码内显示/隐藏功能区控件,请调用ASPxSpreadsheetPropertyEditorSetRibbonMode方法,如下所示。在这种情况下,请不要使用ASPxSpreadsheet.RibbonMode属性。否则,功能区控件可能显示不正确。

using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Office.Web;
using DevExpress.Web.ASPxSpreadsheet;
// ...
public class WebSpreadsheetRibbonController : ObjectViewController<DetailView, Document> {
    protected override void OnActivated() {
        base.OnActivated();
        ASPxSpreadsheetPropertyEditor spreadsheetPropertyEditor = View.FindItem("Data") as ASPxSpreadsheetPropertyEditor;
        if (spreadsheetPropertyEditor != null) {
            SpreadsheetRibbonMode mode = SpreadsheetRibbonMode.Ribbon;
            spreadsheetPropertyEditor.SetRibbonMode(mode);
        }
    }
}

在代码中

更改文件存储格式

  1. WinForms或ASP.NET Module项目中,创建一个View Controller

  2. 在重写的OnActivated方法中,如访问UI元素及其控件的方式主题中所述,访问SpreadsheetPropertyEditorASPxSpreadsheetPropertyEditor

  3. 指定编辑器的DocumentFormat属性。

    using DevExpress.ExpressApp;
    using DevExpress.ExpressApp.Office.Win;
    using DevExpress.Spreadsheet;
    // ...
    public class SpreadsheetDocumentFormatController : ObjectViewController<DetailView, Document> {
        protected override void OnActivated() {
            base.OnActivated();
            SpreadsheetPropertyEditor spreadsheetPropertyEditor = View.FindItem("Data") as SpreadsheetPropertyEditor;
            if (spreadsheetPropertyEditor != null) {
                spreadsheetPropertyEditor.DocumentFormat = DocumentFormat.OpenXml;
            }
        }
    }
    

自定义WinForms SpreadsheetPropertyEditor菜单

SpreadsheetPropertyEditor菜单不显示所有可用工具栏和功能区选项卡。使用静态SpreadsheetPropertyEditor.DefaultSpreadsheetToolbarType属性可自定义工具栏。可用项目列在SpreadsheetToolbarType枚举中。

using DevExpress.ExpressApp.Office.Win;
using DevExpress.XtraSpreadsheet;
// ...
SpreadsheetPropertyEditor.DefaultSpreadsheetToolbarType |= 
    SpreadsheetToolbarType.ChartTools | SpreadsheetToolbarType.TableTools;

处理SpreadsheetMenuManagerController.CustomizeSpreadsheetToolbarType事件以仅更改特定编辑器的工具栏和选项卡:

  1. WinForms Module项目中,创建一个View Controller

  2. 访问SpreadsheetMenuManagerController并在重写的OnActivated方法中预订其CustomizeSpreadsheetToolbarType事件。

  3. 在事件处理程序中,指定CustomizeSpreadsheetToolbarTypeEventArgs.SpreadsheetToolbarType属性。

using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Office.Win;
using DevExpress.XtraSpreadsheet;
// ...
public class CustomSpreadsheetController : ViewController {
    protected override void OnActivated() {
        base.OnActivated();
        SpreadsheetMenuManagerController controller = Frame.GetController<SpreadsheetMenuManagerController>();
        if (controller != null) {
            controller.CustomizeSpreadsheetToolbarType  = Controller_CustomizeSpreadsheetToolbarType;
        }
    }
    private void Controller_CustomizeSpreadsheetToolbarType(object sender, CustomizeSpreadsheetToolbarTypeEventArgs e) {
        e.SpreadsheetToolbarType |= SpreadsheetToolbarType.ChartTools | SpreadsheetToolbarType.TableTools;
    }
}

您还可以在运行时自定义Bars菜单。您的定制存储在用户的模型差异中

相关文章

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