C# 导出到Excel时出现ReleaseObject错误
我在WPF中有一个树视图。现在根据我的要求,我想将它导出到excel中。我在stack overflow中有一个代码 这是我的c#代码片段 此外,我也无法发布Excel对象,并给出这些行的错误C# 导出到Excel时出现ReleaseObject错误,c#,wpf,excel,treeview,C#,Wpf,Excel,Treeview,我在WPF中有一个树视图。现在根据我的要求,我想将它导出到excel中。我在stack overflow中有一个代码 这是我的c#代码片段 此外,我也无法发布Excel对象,并给出这些行的错误 releaseObject(xlWorkSheet); releaseObject(xlWorkBook); releaseObject(xlApp); 请帮助我。提前谢谢。您必须以正确的顺序释放COM对象。我在我的ExcelManager类中有一个帮助器方法: private void Re
releaseObject(xlWorkSheet);
releaseObject(xlWorkBook);
releaseObject(xlApp);
请帮助我。提前谢谢。您必须以正确的顺序释放COM对象。我在我的
ExcelManager
类中有一个帮助器方法:
private void ReleaseComObjects(bool isQuitting)
{
try
{
if (isQuitting)
{
workbook.Close(false, missing, missing);
excelApplication.Quit();
}
Marshal.ReleaseComObject(workbooks);
Marshal.ReleaseComObject(workbook);
if (worksheets != null) Marshal.ReleaseComObject(worksheets);
Marshal.ReleaseComObject(worksheet);
Marshal.ReleaseComObject(excelApplication);
workbook = null;
worksheets = null;
worksheet = null;
excelApplication = null;
}
catch { }
finally { GC.Collect(); }
}
您可以选择删除
isQuitting
部分代码。您是否实现了releaseObject方法?我在这些行中遇到错误。请告诉我如何实现它?@DhavalPatel Sir如何删除此树视图项。项。添加(父);问题sir非常感谢您的解决方案。您能告诉我如何删除此问题吗..treeView_items.items.Add(父亲);我不知道你指的是什么问题,你想做什么,问题是什么。。。我不是一个读心术的人。还有,为什么要复制您不理解的代码,甚至不知道它是否有效?你是从一个问题上抄来的,甚至不是从一个答案上抄来的。。。那简直是疯了。问题作者发布它是因为他们有问题,而你复制了它?这个问题现在已经得到了回答,所以我建议你问一个与你的其他问题相关的新问题,并尽可能多地提供相关信息。非常感谢!为了指导我,我也会这么做。实际上,我在wpf窗口中有一个treeview。现在我想将该treeview导出到excel中,但不想得到导出的方法。在wpf中,我们将数据绑定属性到UI控件,因此在您的情况下,您应该将集合属性数据绑定到treeview.ItemsSource
属性,如果您这样做了,然后,您需要做的就是遍历该集合,并直接从中填充Excel数据。当您学习如何正确地编写代码并且不复制无效代码时,这很容易。在返回本网站之前,您需要认真阅读MSDN上的页面。
releaseObject(xlWorkSheet);
releaseObject(xlWorkBook);
releaseObject(xlApp);
private void ReleaseComObjects(bool isQuitting)
{
try
{
if (isQuitting)
{
workbook.Close(false, missing, missing);
excelApplication.Quit();
}
Marshal.ReleaseComObject(workbooks);
Marshal.ReleaseComObject(workbook);
if (worksheets != null) Marshal.ReleaseComObject(worksheets);
Marshal.ReleaseComObject(worksheet);
Marshal.ReleaseComObject(excelApplication);
workbook = null;
worksheets = null;
worksheet = null;
excelApplication = null;
}
catch { }
finally { GC.Collect(); }
}