首先,我看过这篇文章。答案之一似乎为在 ShowDialog 中按名称过滤提供了希望。现在,这里是我想要做的事情的描述:
我有这段 C# 代码:
private System.Windows.Forms.OpenFileDialog csv_file_open_dlg;
.
.
.
csv_file_open_dlg.FileName = "";
csv_file_open_dlg.Filter = "csv files (*.csv)|*.csv|All files (*.*)|*.*";
int rc = 0;
if (csv_file_open_dlg.ShowDialog() == DialogResult.OK)
{
if (0 == m_csv_file_cmp_counter)
{
m_firstCsvFileSelected = csv_file_open_dlg.FileName;
}
.
.
.
如果我选择第一个文件 - May 18 Muni RosterDetailReport.csv - 并将其名称保留在字符串变量中,有没有办法在下次 ShowDialog 在同一目录中运行时过滤掉该文件?
换句话说,在选择May 18 Muni RosterDetailReport.csv 之后,有没有办法将该名称反馈回ShowDialog
, 作为过滤器?
我认为答案是否定的,但我只是在仔细检查。如果没有,是否有通过订阅 OpenFileDialog 事件的解决方法,如我在本文开头提到的帖子中所示?
编辑:
所以听起来,我可以使用 OK 事件来阻止用户第二次选择第一个文件?我希望有人会回答这个问题。