De Sharlene Khan

Adăugați suport pentru încărcare de fișiere cu utilizarea intuitivă de glisare și plasare.

Cititorii ca tine ajută la sprijinirea MUO. Când efectuați o achiziție folosind link-uri de pe site-ul nostru, este posibil să câștigăm un comision de afiliat. Citeşte mai mult.

Multe aplicații moderne operează pe fișiere pe care un utilizator le poate încărca în sistemul său. Editorii de imagini, IDE-urile de cod și procesoarele de text sunt toate exemple. Dacă construiți o aplicație Windows Form, puteți adăuga cu ușurință această funcționalitate ca parte a interfeței dvs. de utilizator.

Aplicațiile Windows Form vă permit să glisați și să plasați elemente de UI, cum ar fi panouri sau casete cu listă. Puteți utiliza aceste elemente ale interfeței de utilizare pentru a vă crea funcționalitatea de glisare și plasare. Când utilizatorul trage un fișier pe un panou, puteți afișa feedback pe baza acelui fișier.

Cum se creează interfața de utilizare pentru containerul Drag and Drop

instagram viewer

Puteți utiliza un element panou pentru a crea interfața de utilizare pentru funcționalitatea de glisare și plasare. Puteți utiliza apoi un element ListBox UI pentru a afișa numele oricăror fișiere pe care un utilizator le trage în panou.

  1. Creați o nouă aplicație Windows Forms.
  2. În caseta de instrumente, căutați un element UI din panou și trageți-l pe pânză.
  3. Evidențiați noul panou. În fereastra de proprietăți, modificați valorile următoarelor proprietăți:

    Proprietate

    Valoare nouă

    Nume

    dragDropPanel

    Culoare de fundal

    Fum alb

    BorderStyle

    FixedSingle

    mărimea

    600, 400

    Vizibil

    Adevărat

  4. În caseta de instrumente, căutați un element ListBox UI și trageți-l pe pânză. Poziționați-l astfel încât să fie în interiorul panoului și asigurați-vă că există o anumită distanță între ListBox și panou.
  5. Evidențiați noul ListBox și modificați valorile următoarelor proprietăți:

    Proprietate

    Valoare nouă

    Nume

    uploadedFilesList

    Culoare de fundal

    Fum alb

    BorderStyle

    Nici unul

    mărimea

    500, 300

    Vizibil

    Fals

Cum să adăugați evenimentul Drag and Drop

Poți să folosești evenimente într-o aplicație Windows Form să execute anumite funcții numai atunci când apar anumite evenimente.

Pentru a adăuga funcționalități la panoul de glisare și plasare, va trebui să adăugați două evenimente. Evenimentul „DragEnter” va avea loc atunci când trageți fișiere peste panou. Evenimentul „DragDrop” va avea loc atunci când dați drumul mouse-ului pentru a arunca fișierele în panou.

  1. Evidențiați elementul UI din panoul exterior.
  2. În fereastra de proprietăți, faceți clic pe Luminarea pictograma pentru a deschide lista de evenimente.
  3. Faceți dublu clic pe DragEnter eveniment pentru a genera o nouă funcție. Această funcție se va executa când trageți fișiere peste panou.
  4. În interiorul noii funcții, schimbați pictograma mouse-ului pentru a indica acțiunea de glisare/deplasare:
    privatgoldragDropPanel_DragEnter(Expeditorul obiectului, DragEventArgs e)
    {
    // Schimbă pictograma mouse-ului
    e. Efect = DragDropEffects. Toate;
    }
  5. Faceți clic pe Formularul 1.cs [Design] din partea de sus a ferestrei Visual Studio, pentru a reveni la vizualizarea pânzei. Evidențiați elementul UI din panou.
  6. În fereastra de proprietăți, faceți clic pe Luminarea pictograma pentru a reveni la lista de evenimente. De data aceasta, faceți dublu clic pe Trage si lasa eveniment. Aceasta va genera o altă funcție care se va executa atunci când dați drumul mouse-ului pentru a arunca fișierele în panou.
  7. În noua funcție DragDrop, obțineți lista fișierelor pe care utilizatorul le trage în panou. Puteți găsi acest lucru în detaliile evenimentului care sunt transmise automat în funcție.
    privatgoldragDropPanel_DragDrop(Expeditorul obiectului, DragEventArgs e)
    {
    șir[] fișiere = (șir[])e. Date. GetData (Formate de date. FileDrop, fals);
    }

Cum să afișați lista fișierelor trase

Acum că ați adăugat funcționalitatea pentru ca utilizatorul să tragă și să plaseze fișiere, puteți afișa numele fișierelor folosind elementul ListBox UI.

  1. În interiorul funcției dragDropPanel_DragDrop(), după ce obțineți lista de fișiere, utilizați o buclă for pentru a parcurge fiecare fișier.
    pentru fiecare (var fișier în fișiere)
    {

    }
  2. În interiorul buclei for, obțineți doar numele fișierului. Separați numele fișierului de calea fișierului și stocați-l într-o variabilă separată. Dacă utilizați un Mac, poate fi necesar să modificați codul pentru a lua în considerare barele oblice înainte în loc de barele oblice inverse.
    șir fileName = fișier. Subșir (fișier. LastIndexOf("\\") + 1, dosar. Lungime - (fișier. LastIndexOf("\\") + 1));
  3. Adăugați numele fișierului la elementul ListBox UI.
    încerca
    {
    uploadedFilesList.Articole.Adăuga(nume de fișier);
    }
    captură (Excepțieexcepție)
    {
    Consolă. WriteLine(excepție);
    }
  4. ListBox-ul nu este vizibil în mod implicit. După bucla for, modificați vizibilitatea ListBox-ului la adevărat:
    uploadedFilesList. Vizibil = Adevărat;
  5. Modificați constructorul din partea de sus a fișierului. Seteaza AllowDrop și Defilare automată proprietățile panoului de glisare și plasare la true.
    public Formularul 1()
    {
    InitializeComponent();
    dragDropPanel. AllowDrop = Adevărat;
    dragDropPanel. AutoScroll = Adevărat;
    }

Cum să ștergeți lista

După ce utilizatorul a tras elemente în panou, ar putea dori să ștergă lista și să înceapă din nou. Puteți adăuga un buton pentru a șterge lista atunci când utilizatorul face clic pe el.

  1. Folosind caseta de instrumente, trageți un buton pe pânză.
  2. Evidențiați butonul. Utilizați fereastra de proprietăți pentru a modifica următoarele proprietăți la noile valori:

    Proprietate

    Valoare nouă

    Nume

    clearButton

    Text

    clar

  3. Faceți dublu clic pe buton pentru a genera o nouă funcție. Această funcție se va executa când faceți clic pe butonul în timpul execuției:
    privatgolclearButton_Click(Expeditorul obiectului, EventArgs e)
    {

    }

  4. În interiorul funcției, ștergeți conținutul elementului ListBox UI și ascundeți-l:
    privatgolclearButton_Click(Expeditorul obiectului, EventArgs e)
    {
    uploadedFilesList.Articole.Clar();
    uploadedFilesList. Vizibil = fals;
    }

Cum să testați panoul de glisare și plasare

Pentru a testa funcționalitatea de glisare și plasare, rulați aplicația și trageți câteva fișiere în panou. Dacă este nevoie, poți și tu depanați aplicația Winforms în Visual Studio în timpul execuției. Acest lucru vă va ajuta să înțelegeți ce se întâmplă în fiecare linie de cod.

  1. Apăsați butonul verde de redare din partea de sus a ferestrei Visual Studio pentru a rula aplicația.
  2. Trageți câteva fișiere din exploratorul de fișiere și plasați-le în panou. Asigurați-vă că nu rulați Visual Studio în modul administrator. Va trebui să configurați permisiuni de securitate suplimentare pentru glisare și plasare pentru a funcționa în modul administrator.
  3. Panoul se va actualiza pentru a vă afișa numele fișierelor pe care le-ați tras în panou.
  4. Trageți suficiente fișiere și veți vedea că panoul de glisare și plasare afișează automat o bară de derulare în partea dreaptă.
  5. Faceți clic pe clar butonul pentru a goli lista.

Utilizarea funcției de glisare și plasare în aplicațiile Windows Form

Acum sperăm că înțelegeți cum să adăugați funcționalitatea de glisare și plasare în aplicația dvs. Windows Form. Există multe alte funcții pe care le puteți explora pentru a face lucruri interesante cu Windows Forms.

Aboneaza-te la newsletter-ul nostru

Comentarii

AcțiuneTweetAcțiuneAcțiuneAcțiune
Copie
E-mail
Acțiune
AcțiuneTweetAcțiuneAcțiuneAcțiune
Copie
E-mail

Link copiat în clipboard

Subiecte asemănătoare

  • Programare
  • Programare
  • Explorator de fișiere
  • Dezvoltare web

Despre autor

Sharlene Khan (71 articole publicate)

Shay lucrează cu normă întreagă ca dezvoltator de software și îi place să scrie ghiduri pentru a-i ajuta pe alții. Ea are o licență în IT și are experiență anterioară în asigurarea calității și tutorat. Shay îi place să joace și să cânte la pian.