Как я могу проверить имя файла до закрытия SaveFileDialog?

Я использую SaveFileDialog и хотел бы оценить, соответствует ли файл определенным условиям, прежде чем разрешить его сохранение. Если он не соответствует критериям, я не хочу, чтобы SaveFileDialog закрывался при нажатии кнопки «Сохранить». Я думал, что FileOK может работать, но диалоговое окно выглядит так, как будто оно уже закрыто к моменту запуска этого события, и я не вижу способа предотвратить его закрытие в любом случае.


person Andy Stampor    schedule 11.05.2009    source источник


Ответы (3)



Попробуйте этот подход из обработчика FileOK

private void openFileDialog1_FileOk(object sender, CancelEventArgs e)
{
    //your conditions...
    if (!openFileDialog1.FileName.Equals( "C:\\hello.txt" ) )
    {
        //if fail, set e.cancel
        MessageBox.Show(@"File name must equal c:\hello.txt.");
        e.Cancel = true;

    }            
}
person Steve    schedule 11.05.2009