C # OpenFileDialog Diretório para bloquear
-
06-07-2019 - |
Pergunta
Estou fazendo um software que precisa ser apenas capazes permitir que as pessoas para selecionar arquivos e pastas usando o OpenFileDialog que estão no mesmo diretório do programa e que estão em pastas mais profundas. Eu não quero o OpenFileDialog para ser capaz de selecionar fora o material de diretório atual do programa. Isso é possível fazer em C # usando o OpenFileDialog?
Por favor me avise
Graças
Solução
Você pode verificar se o caminho está correto após selecionado
se é apenas aceitar ou caixa de mensagem de envio dizer-lhe que seleccione diretório diferente
Outras dicas
Eu não vejo qualquer fora do suporte caixa pelo controle OpenFileDialog. No entanto, você pode tentar o seguinte,
Defina a propriedade InitialDirectory ao seu caminho de programa. Então, se um usuário seleciona um determinado fora caminho do caminho do programa, usar o evento FileOk para verificar isso e trazê-lo de volta para o InitialDirectory.
Se você quer muito mais controle, então você terá que escrever o seu diálogo personalizada.
Isto é como eu fiz isso.
openFileDialog1.InitialDirectory = Path.Combine(Path.GetDirectoryName(Application.StartupPath), "FolderName");
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
while(Path.GetDirectoryName(openFileDialog1.FileName) != Path.Combine(Path.GetDirectoryName(Application.StartupPath), "FolderName")){
MessageBox.Show("Please select .EXE which is in the default folder", "Wrong folder", MessageBoxButtons.OK, MessageBoxIcon.Information);
openFileDialog1.ShowDialog();
}
}
Eu tenho medo que você não pode. A maioria das pessoas criaram seu próprio diálogo personalizada para este cenário.