首页 > 代码库 > [Telerik]RadDocking第02篇 保存和加载RadDocking的布局
[Telerik]RadDocking第02篇 保存和加载RadDocking的布局
一、演示概述
此演示展示了如何通过RadDocking控件自身所提供的SaveLayout()保存布局信息,以及通过LoadLayout()方法来加载布局信息。如此一来,就可以将用户自定义的布局信息持久化保存到文件中,当用户再次打开应用时,可将布局完好如初的恢复显示。
相关下载(屏幕录像):http://pan.baidu.com/s/1gd6DwDt
在线播放:http://v.youku.com/v_show/id_XODcyNjE0Mjg4.html
温馨提示:如果屏幕录像和代码不能正常下载,可站内留言,或发邮件到524130780@QQ.COM
二、运行效果
效果如下图所示:
三、关键代码
1、保存布局的代码
2、加载布局的代码
3、持久化生成的XML
RadDocking的布局持久化生成的字符串,也即为一个XML,内容大致如下所示:
四、相关资源
1、Telerik官方帮助文档地址:http://docs.telerik.com/devtools/wpf/controls/raddocking/overview2
此演示展示了如何通过RadDocking控件自身所提供的SaveLayout()保存布局信息,以及通过LoadLayout()方法来加载布局信息。如此一来,就可以将用户自定义的布局信息持久化保存到文件中,当用户再次打开应用时,可将布局完好如初的恢复显示。
相关下载(屏幕录像):http://pan.baidu.com/s/1gd6DwDt
在线播放:http://v.youku.com/v_show/id_XODcyNjE0Mjg4.html
温馨提示:如果屏幕录像和代码不能正常下载,可站内留言,或发邮件到524130780@QQ.COM
二、运行效果
效果如下图所示:
三、关键代码
1、保存布局的代码
/// <summary> /// 将RadDocking的布局信息转换为字符串。 /// </summary> /// <returns></returns> private string SaveLayoutAsString() { MemoryStream stream = new MemoryStream(); this.RadDocking.SaveLayout(stream); stream.Seek(0, SeekOrigin.Begin); StreamReader reader = new StreamReader(stream); return reader.ReadToEnd(); }
2、加载布局的代码
/// <summary> /// 从字符串中加载RadDocking的布局信息。 /// </summary> /// <param name="xml"></param> private void LoadLayoutFromString(string xml) { using (Stream stream = new MemoryStream(Encoding.UTF8.GetBytes(xml))) { stream.Seek(0, SeekOrigin.Begin); this.RadDocking.LoadLayout(stream); } }
3、持久化生成的XML
RadDocking的布局持久化生成的字符串,也即为一个XML,内容大致如下所示:
<?xml version="1.0" encoding="utf-8"?> <RadDocking> <DocumentHost> <RadSplitContainer> <Items> <RadPaneGroup SelectedIndex="0"> <Items> <RadPane SerializationTag="LayoutXml" IsDockable="True" Header="Layout Xml" /> <RadDocumentPane SerializationTag="DocumentPane" IsDockable="True" Title="Document 1" Header="Document 1" /> </Items> </RadPaneGroup> </Items> </RadSplitContainer> </DocumentHost> <SplitContainers> <RadSplitContainer Dock="DockedLeft" Width="240"> <Items> <RadPaneGroup SelectedIndex="0"> <Items> <RadPane SerializationTag="PaneLeft1" IsDockable="True" Header="Pane Left 1" /> <RadPane SerializationTag="PaneLeft2" IsDockable="True" Header="Pane Left 2" /> <RadPane SerializationTag="PaneLeft3" IsDockable="True" Header="Pane Left 3" /> <RadPane SerializationTag="PaneLeft4" IsDockable="True" Header="Pane Left 4" /> </Items> </RadPaneGroup> </Items> </RadSplitContainer> <RadSplitContainer Dock="DockedRight" Width="240"> <Items> <RadPaneGroup SelectedIndex="0"> <Items> <RadPane SerializationTag="PaneRight1" IsDockable="True" Header="Pane Right 1" /> </Items> </RadPaneGroup> </Items> </RadSplitContainer> <RadSplitContainer Dock="DockedTop" Height="180"> <Items> <RadPaneGroup SelectedIndex="0"> <Items> <RadPane SerializationTag="PaneTop1" IsDockable="True" Header="Pane Top 1" /> </Items> </RadPaneGroup> </Items> </RadSplitContainer> </SplitContainers> </RadDocking>
四、相关资源
1、Telerik官方帮助文档地址:http://docs.telerik.com/devtools/wpf/controls/raddocking/overview2
[Telerik]RadDocking第02篇 保存和加载RadDocking的布局
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。