首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DevExpress BarManager SaveLayoutToStream

DevExpress BarManager SaveLayoutToStream
EN

Stack Overflow用户
提问于 2011-06-08 03:09:34
回答 2查看 1.3K关注 0票数 0

我有一个全是DevExpress控件的窗口。突出的控件是一个包含透视表( TabbedGroup )的标签(标签包含以下控件之一:透视表控件或网格控件)。围绕此控件的是其他可停靠窗口以及窗口顶部的项目菜单。

我想通过调用BarManager对象上的SaveLayoutToStream来保存项目菜单栏的布局。

当且仅当突出控件的布局与原始布局相同时(即在设计时),此函数才会成功完成。如果我拖动各个选项卡并将它们停靠在DockLayoutManager中,则会出现以下异常:

代码语言:javascript
复制
Exception of type 'DevExpress.Xpf.Core.Serialization.DuplicateSerializationIDException' was thrown.

 at DevExpress.Xpf.Core.Serialization.DuplicateSerializationIDException.Assert(IDXSerializable dxObj1, IDXSerializable dxObj2)
 at DevExpress.Xpf.Core.Serialization.DXSerializer.SerailizationStore.<.ctor>b__4(IDXSerializable dxObj)
 at DevExpress.Xpf.Core.Serialization.DXSerializer.AcceptCore(DependencyObject dObj, Action`1 visit, IEnumerable`1 parentIDs)
 at DevExpress.Xpf.Core.Serialization.DXSerializer.Accept(DependencyObject dObj, AcceptNestedObjects acceptNested, Action`1 visit)
 at DevExpress.Xpf.Core.Serialization.DXSerializer.SerailizationStore..ctor(DependencyObject root, AcceptNestedObjects acceptNested)
 at DevExpress.Xpf.Core.Serialization.DXSerializer.SerializeCore(DependencyObject root, Object path, String appName, DXOptionsLayout options, AcceptNestedObjects acceptNested)
 at DevExpress.Xpf.Bars.BarManager.SaveLayoutToStream(Stream stream)
 at LayoutExtensions.GetLayout(BarManager view) in C:\LayoutHelper.cs:line 136
EN

回答 2

Stack Overflow用户

发布于 2011-06-16 17:11:13

我们已经检查了callstack,甚至无法想象是什么导致了这个问题的出现。请将显示此问题的示例项目发布到DevExpress support center。我们将研究问题出现的原因并解决它。

票数 0
EN

Stack Overflow用户

发布于 2012-01-11 00:39:13

看见

http://www.devexpress.com/Support/Center/e/E2272.aspxhttp://www.devexpress.com/Support/Center/p/Q325319.aspx

如果在布局中使用相同类型的对象,请为所有对象分配DXSerializer.SerializationID属性

例如

代码语言:javascript
复制
<Window x:Class="WpfApplication.MainWindow"
        xmlns:core="http://schemas.devexpress.com/winfx/2008/xaml/core"
        xmlns:dxdo="http://schemas.devexpress.com/winfx/2008/xaml/docking"

..。

代码语言:javascript
复制
<dxdo:DockLayoutManager Name="FilterGridDockLayoutManager" core:DXSerializer.SerializationID="dock1" >
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6270342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档