本文整理汇总了C#中Folder.UpdateName方法的典型用法代码示例。如果您正苦于以下问题:C# Folder.UpdateName方法的具体用法?C# Folder.UpdateName怎么用?C# Folder.UpdateName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Folder
的用法示例。
在下文中一共展示了Folder.UpdateName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RenameFolder
public void RenameFolder(Folder folder, string newName)
{
Contract.Requires(null != folder, "folder");
Contract.Requires(m_folderList.Contains(folder), "folder");
Contract.Requires(newName == newName.SuperTrim(), "newName");
Contract.Requires(Folder.IsValidFolderName(newName), "newName");
if (folder.Name == newName)
{
// no-op
}
else if (folder.Name.EasyEquals(newName))
{
// just a case change -> easy
// make darn sure we haven't broken our logic -> should only have folder that matches w/ case
Debug.Assert(m_folderList.Count(existing => existing.Name.EasyEquals(newName)) == 1);
folder.UpdateName(newName);
}
else if (m_folderList.Count(existing => existing.Name.EasyEquals(newName)) > 0)
{
Debug.Assert(m_folderList.Count(existing => existing.Name.EasyEquals(newName)) == 1);
var target = m_folderList.First(existing => existing.Name.EasyEquals(newName));
// move existing items to target folder
m_taskList
.Where(task => task.Folder == folder)
.ForEach(task => task.Folder = target);
// nuke existing folder
m_folderList.Remove(folder);
if (m_currentFolder == folder)
{
CurrentFolder = target;
}
}
else
{
// this is an entirely novel name. Cool!
// make darn sure we haven't broken our logic -> should have no folder with matching name
Debug.Assert(m_folderList.Count(existing => existing.Name.EasyEquals(newName)) == 0);
folder.UpdateName(newName);
}
refreshAllFolders();
}