在DocumentsPanel
我有一些开放的表格,每一种都是另一种形式。如何保存循环中打开的文件。
在这种情况下,这有效。
using (StreamWriter file = new StreamWriter ("files.txt"))
{
foreach (FormEditor doc in dockPanel1.Documents)
{
file.WriteLine (doc.SuperFileName);
}
}
file.Close ();
但是,如果在面板中打开了第二个FormBrowser
,则在您尝试保存文档时会弹出错误。错误如下所述:
Unable to cast object of type 'App1.FormBrowser' to type 'App1.FormEditor'.
答案 0 :(得分:0)
关于所提问题的问题非常清楚,而且代码中使用的类非常不清楚。
通过观察,FormEditor
中的FormBrowser
和Document
都为DocumentsPanel
,它们将列在Documents
的{{1}}属性中例如,在你的情况下是DocumentsPanel
,如果它们存在的话。
因此,当您想要访问文档并进行保存时,您需要验证文档的类型是否正确,即它是否在dockPanel1
中。一个简单的解决方案可能是:
FormEditor