LunarPresentation/Commands/NewDocument.cs
(开头部分) 5KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Xml;
namespace SHomeWorkshop.LunarPresentation.Commands
{
public partial class Command
{
/// <summary>
/// 新建文档。
/// </summary>
/// <param name="window">主窗口,传入Globals.MainWindow即可。</param>
/// <param name="mainTabControl">主窗口上的主文件选项卡。</param>
/// <param name="templateFilePath">此参数不为null时,会根据指定的模板创建文档。</param>
public static void NewDocument(MainWindow window,
TabControl mainTabControl, string templateFilePath = null)
{
//先看看有没有打开同名文件,如果有,Globals.newDocumentsCount+1,再试.
List<string> fileNames = new List<string>();
foreach (TabItem ti in mainTabControl.Items)
{
Editor e = ti as Editor;
if (e != null)
{
fileNames.Add(e.FileNameHeader.Text);
}
}
string newFileDefName = "新文档 "
+ (++Globals.newDocumentsCount).ToString() + ".lpdoc";
while (fileNames.Contains(newFileDefName))
{
Globals.newDocumentsCount++;
newFileDefName = "新文档 "
+ (Globals.newDocumentsCount).ToString() + ".lpdoc";
}
Editor editor;
if (templateFilePath == null)
{
editor = new Editor(window);
}
else
{
XmlDocument templateXmlDoc = new XmlDocument();
//读出模板的文本。
try
{
LoadTemplateXmlDoc(templateXmlDoc, templateFilePath);
}
catch (Exception ex)
{
后面还有 103 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。