Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197

    [vb.net] ereditare da openFileDialog e modificarlo

    ho bisogno di un controllo che mi consenta di selezionare sia file e cartelle contemporanemente

    conosco openFileDialog(che consente di selezionare solo file) e folderBrowserDialog (che consente di selezionare solo cartelle)

    avevo pensato quindi di realizzarne uno personalizzato partendo dal openFileDialog(ereditando da esso) e fare in modo che da questo passa fare selezionare anche piu file o piu cartelle contemporaneamente

    quello che mi aspetto in uscita quando premo il tasto apri e che mi ritorni semplicemente un'array di stringhe contenente le path(assolute) di quello che ho selezionato, (cosa che l'openFileDialog gia fa ma solo per i file)

    questo componente inoltre gia fa il multiselect(è una funzionalita che mi occorre e me la ritrovo gratis)
    quello che devo modificare è che se clicco su una "cartella" e premo apri me la apre e mi fa vedere il contenuto, ma io vorrei che mi restituisca il percorso come se si trattasse di un file )


    avrei bisogno di un'aiuto su come procedere,sopratutto quali metodi e proprieta devo sovrascrivere per modificarne il comportamento



    inoltre sarebbe bello rinominare il tasto apri con "Aggiungi" per far cio devo forse sovrascrivere qualche metodo e/o evento paint, draw o qualcosa del genere? potete darmi qualche indicazione in merito? oppure è possibile in progettazione appiccicare una label sopra il tasto?


    spero di essere stato chiaro, grazie a tutti.
    Alessio

  2. #2
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    scusa ma che senso ha selezionare cartelle e file in una openFileDialog ?
    cosa devi fare, oltre a prendere tutti i nomi dei file e cartelle ?
    I got the remedy

  3. #3
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197
    Originariamente inviato da albgen
    scusa ma che senso ha selezionare cartelle e file in una openFileDialog ?
    cosa devi fare, oltre a prendere tutti i nomi dei file e cartelle ?
    devo usare questo controllo(o un'altro) in un programma per masterizzare
    mi serve per poter scegliere quali file e quali cartelle masterizzare,
    (mi serve solo per selezionare), poi dovro aggiungere quello che ho selezionato ad un elenco

  4. #4
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    OpenFileDialog _dialog = new OpenFileDialog();
    _dialog.Multiselect = true;
    _dialog.ShowDialog();
    I got the remedy

  5. #5
    Non puoi ereditare da OpenFileDialog (è una classe NotInheritable, o sealed, se preferisci), senza contare che OpenFileDialog si appoggia alle API della shell per mostrare la finestra e fare la maggior parte del lavoro sporco, per cui non potresti modificarne praticamente in nulla il comportamento.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197
    Originariamente inviato da albgen
    OpenFileDialog _dialog = new OpenFileDialog();
    _dialog.Multiselect = true;
    _dialog.ShowDialog();
    questo controllo con consente di selezionare cartelle


    per MItaly: grazie dell'info, anche se mi dai una brutta notizia adesso ho chiaro che non si puo fare cosi come intendevo, mi inventero qualche altra cosa

  7. #7
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    Originariamente inviato da afrappe
    questo controllo con consente di selezionare cartelle
    eh
    ma che dici ? hai provato almeno ?
    ti permette di selezionare sia file che cartelle.
    Mi sembra che volevi fare questo
    I got the remedy

  8. #8
    Utente di HTML.it L'avatar di afrappe
    Registrato dal
    Jan 2002
    Messaggi
    1,197
    forse il temine "selezionare" l'ho usato impropriemente

    vorrei ottenere questo:
    seleziono un file->premo Apri->la finestra si chiude restituendomi il percorso del file che ho selezionato(e lo fa! )


    seleziono la cartella->premo Apri ->la finestra si chiude restituendomi il percorso della cartella che ho selezionato(NON lo fa! perche quando premo apri dopo aver selezionato una cartella,la finestra non si chiude restituendomi il percorso ma apre la cartella e mi fa vedere eventuali file contenuti)

    cioe alla pressione del tasto apri la finestra si chiude e restituisce la path solo dei file
    le cartelle me le fa esplorare.

    ma a quanto sembra non c'e' un controllo che lo fa di suo

  9. #9
    • 1 tasto per aggiungere i file (OpenFileDialog)
    • 1 tasto per aggiungere la cartelle (FolderBrowserDialog)


    La soluzione più semplice perchè non va bene? :master:




    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

  10. #10
    Originariamente inviato da chipdb
    • 1 tasto per aggiungere i file (OpenFileDialog)
    • 1 tasto per aggiungere la cartelle (FolderBrowserDialog)


    La soluzione più semplice perchè non va bene? :master:
    Oltre ad essere la soluzione più semplice da implementare è anche la più semplice da usare per l'utente, che non si aspetta di poter selezionare anche cartelle con la finestra standard "Apri" e va nel panico (la prima legge dell'informatica dice che gli utenti se vedono qualcosa di strano vanno nel panico e chiamano il supporto tecnico, a meno che non si tratti di un messaggio di errore, nel qual caso lo chiudono senza leggerlo).
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.