Implementarea drag and drop în c # în studio vizual

intrare


Orei bune a zilei, dragă Khabrchane. Acest post nu se va deosebi în special de originalitate, unicitate sau geniu. Aș numi manualul utilizatorului. Cred că mulți programatori experimentați vor face o mulțime de comentarii, pentru care eu, în ansamblu, nu voi fi decât recunoscător, mai ales dacă este vorba de critici constructive. Dar, în general, postul meu este orientat mai mult către începători, deoarece oamenii cu experiență se confruntă cel mai probabil cu o astfel de problemă și au rezolvat-o deja.







Deci, ce va fi vorba despre conversația noastră azi? După cum înțelegeți din titlu, vă voi arăta cum să implementați Drag and Drop în C # în Visual Studio. Cred că mulți programatori novice se confruntă cu o astfel de problemă, atunci când există mai multe liste și doriți să glisați și să fixați elemente de la unul de altul, dar să dau seama cum să facă acest lucru sau de a găsi un manual clar nu a putut. Și ambele doresc să aibă în aplicație a fost tot frumos și modern, și a trebuit să facă o selectați elementele simple și se transferă la o altă la simpla apăsare a unui buton. Sper ca acest ghid simplu astăzi pot ajuta în continuare cupluri tinere bărbați (eu fac acest lucru, cred), precum și pentru a risipi orice probleme legate de punerea în aplicare a acestei funcționalități.

Vreau să observ că nu voi examina detaliat cum să găsesc sau să adaug un element sau alt element în formular și nici să descriu în detaliu proprietățile obiectelor.

Cum a început totul


Pe scurt, vă voi spune cum a început totul și ce trebuie să facem (TK). Totul a început cu faptul că sarcina mea a fost punerea în aplicare a mașinii cu băuturi, cu punerea în aplicare integrală, luând în considerare toate nuanțele, cum ar fi înlocuirea de băuturi, prețurile lor, reaprovizionarea mașină de numerar fără utilizarea de cod și multe alte lucruri care ar putea fi omise în alte circumstanțe. Dar m-am gândit, dacă faci, atunci realistichnoi maximă a decis să adauge drag and drop bani dintr-o pungă într-un slot pentru bani decât a avut destul de pomuchatsya, dar a dat programul meu culminant.

Termeni de referință


Avem două obiecte: ListView, care reprezintă punga și lista noastră, în care, atunci când trageți, va apărea numele unei note sau monede. Trebuie să creați un program care să vă permită să glisați elemente din obiectul ListView în lista fără alte butoane.







Păi, apelul este acceptat. Să începem.

Pasul 1 Creați un spațiu de lucru


Creați un nou proiect Windows Form Applicarion și adăugați următoarele elemente în formular:
  1. ListView. Portofelul nostru de unde vom trage banii. Vă reamintesc că toate elementele vor fi prezentate sub formă de imagini cu monede și facturi.
  2. ListBox. Lista, unde vom trage totul, în care vor fi afișate denumirile denominațiilor.
  3. ImageList. De aici vom primi imaginile noastre de bani.
  4. Casa de discuri. Un element auxiliar care va arăta poziția în care titlul va fi adăugat în lista.

Pasul 2 Pregătirea elementelor


A sosit timpul pentru partea cea mai importantă și cea mai dificilă. În general, copierea și lipirea nu vor fi dificile, dar este important să înțelegeți codul! Vyzhprogrammisty;)

Adăugarea de evenimente pentru obiecte.
Pentru ListView:
  1. MouseDown
  2. MouseUp
  3. MouseMove

Pentru Listă:
  1. DragOver
  2. DragDrop
  3. DragEnter
  4. DragLeave
ListView MouseDown


Acest eveniment va apărea în momentul în care faceți clic pe butonul din stânga al mouse-ului în obiectul ListView.

ListView MouseUp


Prin eliberarea butonului mouse-ului, vom "arunca" automat obiectul.

ListView MouseMove


Mișcând mouse-ul, numim acest eveniment și începe să funcționeze numai dacă mergem dincolo de "punga" noastră.
Vreau să vă atrag atenția asupra liniei:

ListBox DragOver
ListBox DragDrop


Adăugați un obiect tras în lista nouă. Aici, cel mai important este argumentul pentru expeditor, care este elementul drag-and-drop. Iar din nou, imaginația ta vine. În acest caz, primesc valoarea Tag-ului din obiectul primit (rețineți că am adăugat numele valorilor nominale în câmpul Tag?). În același mod, puteți realiza tot ceea ce sufletul dumneavoastră dorește.

ListBox DragEnter, DragLeave


În cele din urmă, ultimul lucru este "depozitul" etichetei noastre. Dacă nu, atunci continuați să ne arătați unde se adaugă fișierul, chiar dacă fișierul a fost deja adăugat.

concluzie


Rămâne doar să rulați aplicația și să vă asigurați că funcționează totul (nu uitați să testați programul cu tasta Ctrl apăsată). Acum, după ce ați făcut totul scris mai sus, puteți adapta acest cod la obiectivele dvs. Adăugați contoare pentru a număra obiecte, trageți obiecte nu numai de la liste la liste, dar multe altele pot fi acum implementate în cel mai scurt timp.

Trimiterea în casă


1. Adăugați un număr de monede în ListView (folosind un contor sau în orice alt mod convenabil). Implementați nu scoaterea monedei din ListView, ci reducerea numărului acestora.
2. Adăugați orice obiect nou (pe care trebuie să-l definiți) și trageți imaginea în el din ListView. Fiecare tragere și plasare nouă trebuie să șterge imaginea anterioară.
Notă: Puteți să adăugați imediat lista de imagini și să adăugați fotografii la ele sub formă de elemente noi. Nu uitați să luați în considerare faptul că dacă o monedă (notă) a fost adăugată mai devreme, este necesar să nu adăugați un element nou, ci să creșteți numărul elementelor vechi.

În acest scop închei conducerea mea, sper că va fi utilă pentru cineva. Vă mulțumesc pentru atenție!







Articole similare

Trimiteți-le prietenilor: