Dodaj obsługę przesyłania plików dzięki intuicyjnej obsłudze przeciągania i upuszczania.
Wiele nowoczesnych aplikacji działa na plikach, które użytkownik może przesłać do swojego systemu. Edytory obrazów, IDE kodu i edytory tekstu to przykłady. Jeśli budujesz aplikację Windows Form, możesz łatwo dodać tę funkcję jako część swojego interfejsu użytkownika.
Aplikacje Windows Form umożliwiają przeciąganie i upuszczanie elementów interfejsu użytkownika, takich jak panele lub pola list. Tych elementów interfejsu użytkownika można używać do tworzenia funkcji przeciągania i upuszczania. Gdy użytkownik przeciągnie plik na panel, możesz wyświetlić informację zwrotną na podstawie tego pliku.
Jak utworzyć interfejs użytkownika dla kontenera przeciągnij i upuść
Możesz użyć elementu panelu, aby utworzyć interfejs użytkownika dla funkcji przeciągania i upuszczania. Następnie możesz użyć elementu interfejsu użytkownika ListBox, aby wyświetlić nazwy dowolnych plików przeciągniętych przez użytkownika na panel.
- Utwórz nową aplikację Windows Forms.
- W przyborniku wyszukaj element interfejsu użytkownika panelu i przeciągnij go na obszar roboczy.
- Zaznacz nowy panel. W oknie właściwości zmień wartości następujących właściwości:
Nieruchomość
Nowa wartość
Nazwa
PrzeciągnijUpuśćPanel
PowrótKolor
Biały dym
Styl obramowania
Naprawiono pojedynczy
Rozmiar
600, 400
Widoczny
PRAWDA
- W przyborniku wyszukaj element interfejsu użytkownika ListBox i przeciągnij go na kanwę. Ustaw go tak, aby znajdował się wewnątrz panelu i upewnij się, że między ListBox a panelem jest trochę odstępu.
- Zaznacz nowy ListBox i zmień wartości następujących właściwości:
Nieruchomość
Nowa wartość
Nazwa
przesłana lista plików
PowrótKolor
Biały dym
Styl obramowania
Nic
Rozmiar
500, 300
Widoczny
FAŁSZ
Jak dodać zdarzenie „przeciągnij i upuść”.
Możesz użyć zdarzenia w aplikacji Windows Form wykonywać określone funkcje tylko wtedy, gdy wystąpią określone zdarzenia.
Aby dodać funkcjonalność do panelu przeciągnij i upuść, musisz dodać dwa zdarzenia. Zdarzenie „DragEnter” wystąpi podczas przeciągania plików nad panelem. Zdarzenie „DragDrop” wystąpi, gdy puścisz mysz, aby upuścić pliki do panelu.
- Zaznacz element interfejsu panelu zewnętrznego.
- W oknie właściwości kliknij na Rozjaśnianie ikonę, aby otworzyć listę zdarzeń.
- Kliknij dwukrotnie na PrzeciągnijWprowadź zdarzenie, aby wygenerować nową funkcję. Ta funkcja zostanie wykonana podczas przeciągania plików nad panelem.
- Wewnątrz nowej funkcji zmień ikonę myszy, aby wskazać akcję przeciągania/upuszczania:
prywatnypróżniadragDropPanel_DragEnter(nadawca obiektu, DragEventArgs e)
{
// Zmienia ikonę myszy
mi. Efekt = DragDropEfekty. Wszystko;
} - Kliknij na Formularz 1.cs [Projekt] w górnej części okna programu Visual Studio, aby wrócić do widoku kanwy. Zaznacz element interfejsu panelu.
- W oknie właściwości kliknij na Rozjaśnianie ikonę, aby wrócić do listy zdarzeń. Tym razem kliknij dwukrotnie plik Przeciągnij i upuść wydarzenie. Spowoduje to wygenerowanie kolejnej funkcji, która zostanie wykonana, gdy puścisz mysz, aby upuścić pliki do panelu.
- Wewnątrz nowej funkcji DragDrop uzyskaj listę plików, które użytkownik przeciąga do panelu. Można to znaleźć w szczegółach zdarzenia, które są automatycznie przekazywane do funkcji.
prywatnypróżniadragDropPanel_DragDrop(nadawca obiektu, DragEventArgs e)
{
string[] pliki = (string[])e. Dane. GetData (DataFormats. Upuść plik, FAŁSZ);
}
Jak wyświetlić listę przeciągniętych plików
Teraz, po dodaniu funkcji przeciągania i upuszczania plików przez użytkownika, możesz wyświetlać nazwy plików za pomocą elementu interfejsu użytkownika ListBox.
- Wewnątrz funkcji dragDropPanel_DragDrop(), po pobraniu listy plików, użyj pętli for, aby przejrzeć każdy plik.
dla każdego (rozm plik w plikach)
{
} - Wewnątrz pętli for pobierz tylko nazwę pliku. Oddziel nazwę pliku od ścieżki do pliku i zapisz ją w osobnej zmiennej. Jeśli używasz komputera Mac, może być konieczne zmodyfikowanie kodu w celu uwzględnienia ukośników w przód zamiast ukośników odwrotnych.
ciąg nazwa_pliku = plik. Podciąg (plik. LastIndexOf("\\") + 1, plik. Długość - (plik. LastIndexOf("\\") + 1));
- Dodaj nazwę pliku do elementu interfejsu użytkownika ListBox.
próbować
{
przesłana lista plików.Rzeczy.Dodać(Nazwa pliku);
}
złapać (Wyjątekwyjątek)
{
Konsola. Wiersz zapisu(wyjątek);
} - ListBox nie jest domyślnie widoczny. Po pętli for zmień widoczność ListBox na true:
przesłana lista plików. widoczne = PRAWDA;
- Zmodyfikuj konstruktora na górze pliku. Ustaw ZezwólUpuść I Auto Scroll właściwości panelu przeciągnij i upuść na true.
publiczny Formularz 1()
{
InitializeComponent();
PrzeciągnijUpuśćPanel. Zezwól na upuszczenie = PRAWDA;
PrzeciągnijUpuśćPanel. Automatyczne przewijanie = PRAWDA;
}
Jak wyczyścić listę
Po przeciągnięciu elementów do panelu użytkownik może chcieć wyczyścić listę i zacząć od nowa. Możesz dodać przycisk, który wyczyści listę, gdy użytkownik ją kliknie.
- Za pomocą przybornika przeciągnij przycisk na obszar roboczy.
- Zaznacz przycisk. Użyj okna właściwości, aby zmienić następujące właściwości na nowe wartości:
Nieruchomość
Nowa wartość
Nazwa
wyczyśćPrzycisk
Tekst
Jasne
- Kliknij dwukrotnie przycisk, aby wygenerować nową funkcję. Ta funkcja zostanie wykonana po kliknięciu przycisku w czasie wykonywania:
prywatnypróżniawyczyśćButton_Click(nadawca obiektu, EventArgs e)
{}
- Wewnątrz funkcji wyczyść zawartość elementu interfejsu użytkownika ListBox i ukryj go:
prywatnypróżniawyczyśćButton_Click(nadawca obiektu, EventArgs e)
{
przesłana lista plików.Rzeczy.Jasne();
przesłana lista plików. widoczne = FAŁSZ;
}
Jak przetestować panel przeciągnij i upuść
Aby przetestować funkcję przeciągnij i upuść, uruchom aplikację i przeciągnij kilka plików do panelu. W razie potrzeby możesz również debugować swoją aplikację WinForm w Visual Studio w czasie wykonywania. Pomoże ci to zrozumieć, co dzieje się w każdym wierszu kodu.
- Naciśnij zielony przycisk odtwarzania w górnej części okna programu Visual Studio, aby uruchomić aplikację.
- Przeciągnij niektóre pliki z eksploratora plików i upuść je w panelu. Upewnij się, że nie używasz programu Visual Studio w trybie administratora. Będziesz musiał skonfigurować dodatkowe uprawnienia bezpieczeństwa, aby przeciągać i upuszczać, aby działać w trybie administratora.
- Panel zaktualizuje się, aby wyświetlić nazwy plików przeciągniętych do panelu.
- Przeciągnij wystarczającą liczbę plików, a zobaczysz, że panel przeciągania i upuszczania automatycznie wyświetla pasek przewijania po prawej stronie.
- Kliknij na Jasne przycisk, aby opróżnić listę.
Korzystanie z funkcji przeciągania i upuszczania w aplikacjach Windows Form
Mam nadzieję, że teraz rozumiesz, jak dodać funkcję przeciągania i upuszczania do aplikacji Windows Form. Istnieje wiele innych funkcji, które można eksplorować, aby robić interesujące rzeczy w Windows Forms.