我有一个基于NSDocument
的应用程序,其中文档的窗口可能有子窗口,需要在文档关闭之前查询更改。所以我试图拦截关闭文档窗口来做到这一点,但我找不到一个可靠的方法。
我尝试使用-[Document canCloseDocumentWithDelegate:shouldCloseSelector:contextInfo:]
来表示这一点,但很明显,只有在文档发生变化时才会调用(由-updateChangeCount
发出信号)。如果没有变化,就永远不会被调用。
我尝试使用视图控制器的viewWillDisappear
来更新文档也失败了,因为现在注册文档的任何更改为时已晚,所以它们不会被保存(canCloseDocumentWithDelegate:...
已经此时被召唤。)
解决这个问题的最佳方法是什么?
答案 0 :(得分:2)
好吧,我想说如果子窗口包含在文档关闭之前必须要求的更改,则文档有更改。这应该反映在(主)文档窗口中。但是,......
如果文档不包含更改,则应调用 private void extractNomsJoueurs(HtmlAgilityPack.HtmlDocument doc)
{
var links = doc.DocumentNode.SelectNodes("//*[contains(@class, 'bets ml')]");
var names = links.Elements("span");
foreach (var name in names)
{
listNames1Bet777.Add(name.InnerText);
}
for (int i = 0; i < listNames1Bet777.Count(); i++)
{
if (i % 2 == 0)
{
listNames2Bet777.Add(listNames1Bet777[i]);
}
}
foreach (string name in listNames1Bet777)
{
listNames1Bet777.Remove(name);
}
}
,因此文档系统不会要求保存。