Printing 有没有办法在DevX报告中重新排列对象?

Printing 有没有办法在DevX报告中重新排列对象?,printing,devexpress,preview,Printing,Devexpress,Preview,我希望使用户能够在devexpress打印预览上移动内容,并仅在完成后打印。如果可能的话,我能得到一些我可以开始寻找的方向吗?(我将没有时间查看整个文档,这听起来可能很懒,但在我拥有的时间很短的情况下,devx有点大。)我不认为您可以直接在打印预览上这样做,但是,您可以提供一个按钮,启动XtraReports设计器并从当前显示的文档传入布局。用户完成编辑后,可以在打印预览中重新加载文档,并根据需要加载其新布局。您可能需要大量自定义设计器,以删除限制用户仅编辑某些方面的各种选项-您可以隐藏大部分功

我希望使用户能够在devexpress打印预览上移动内容,并仅在完成后打印。如果可能的话,我能得到一些我可以开始寻找的方向吗?(我将没有时间查看整个文档,这听起来可能很懒,但在我拥有的时间很短的情况下,devx有点大。)

我不认为您可以直接在打印预览上这样做,但是,您可以提供一个按钮,启动XtraReports设计器并从当前显示的文档传入布局。用户完成编辑后,可以在打印预览中重新加载文档,并根据需要加载其新布局。您可能需要大量自定义设计器,以删除限制用户仅编辑某些方面的各种选项-您可以隐藏大部分功能,包括数据源、组件托盘等:

最后,介绍一些更改文档/报告布局的实用方法:

    internal static byte[] GetLayoutData(this XtraReport report)
    {
        using (MemoryStream mem = new MemoryStream())
        {
            report.SaveLayoutToXml(mem);
            return mem.ToArray();
        }
    }

    internal static void SetLayoutData(this XtraReport report, byte[] data)
    {
        using (var mem = new MemoryStream(data))
        {
            report.LoadLayoutFromXml(mem);
        }
    }

我不认为您可以直接在打印预览上执行此操作,但您可以提供一个按钮,启动XtraReports设计器并从当前显示的文档传入布局。用户完成编辑后,可以在打印预览中重新加载文档,并根据需要加载其新布局。您可能需要大量自定义设计器,以删除限制用户仅编辑某些方面的各种选项-您可以隐藏大部分功能,包括数据源、组件托盘等:

最后,介绍一些更改文档/报告布局的实用方法:

    internal static byte[] GetLayoutData(this XtraReport report)
    {
        using (MemoryStream mem = new MemoryStream())
        {
            report.SaveLayoutToXml(mem);
            return mem.ToArray();
        }
    }

    internal static void SetLayoutData(this XtraReport report, byte[] data)
    {
        using (var mem = new MemoryStream(data))
        {
            report.LoadLayoutFromXml(mem);
        }
    }