How to create a file filter when dragging in C #

0

I'm implementing the Drag Files function to populate a Listbox with the path of the files.

It works fine, but I would like to put a "filter" making it possible only txt to be imported.

If it is not txt, an Error MessageBox should appear to the user.

Follow the Code

private void listBoxArquivosSelecionados_DragOver(object sender, DragEventArgs e)
    {
        if (e.Data.GetDataPresent(DataFormats.FileDrop))
            e.Effect = DragDropEffects.Link;
        else
            e.Effect = DragDropEffects.None;
    }

    private void listBoxArquivosSelecionados_DragDrop(object sender, DragEventArgs e)
    {
        string[] arquivos = e.Data.GetData(DataFormats.FileDrop) as string[];
        if (arquivos != null)
            listBoxArquivosSelecionados.Items.AddRange(arquivos);
        CarregarStatus();
    }
    
asked by anonymous 16.03.2016 / 20:03

1 answer

0

private void listBoxArquivosSelecionados_DragDrop(object sender, DragEventArgs e)
    {
        string[] arquivos = e.Data.GetData(DataFormats.FileDrop) as string[];
        if (arquivos != null && arquivos.Any())
        {
            foreach(string arquivo in arquivos)
            {
                if (arquivo.Contains(".txt"))
                    listBoxArquivosSelecionados.Items.Add(arquivo);
                else
                    MessageBox.Show("Carregue apenas arquivos de Texto (.txt)", "Atenção");
            }
        }
    }
    
16.03.2016 / 20:22