Прямо сейчас я изучаю c#
, и я попытался создать функциональность для перетаскивания. Я хочу перетащить элемент из ListView (текст), который по каплям преобразуется в изображение в элементе управления Panel.
Изображения сохраняются в каталоге проекта bin/Debug
.
До сих пор мне удавалось перетаскивать текст в текст или изображение в изображение из внешнего источника (изображения с моего рабочего стола или текст с интернет-страницы).
Это не то, что я хотел иметь в своей форме. Я хочу взять текст с помощью перетаскивания, добавить расширение в функцию (.png
) и перетащить изображение на панель.
Это скриншот из моего приложения. Слева у меня есть ListView с текстом, справа у меня есть Panel.
Прямо сейчас у панели есть приветствие BackgroundImage
, но когда я делаю перетаскивание, я хочу, чтобы оно имело BackgroundImage
конкретного приложения слева.
Это код, который у меня есть сейчас. Благодаря этому я могу получать изображения с моего рабочего стола, но не текст из ListView.
private void panel1_DragDrop(object sender, DragEventArgs e) {
foreach (string pic in (string[])e.Data.GetData(DataFormats.FileDrop)) {
Image img = Image.FromFile(pic);
panel1.BackgroundImage = img;
}
}
private void panel1_DragEnter(object sender, DragEventArgs e) {
e.Effect = DragDropEffects.Copy;
}
private void listView1_MouseDown(object sender, MouseEventArgs e) {
listView1.DoDragDrop(listView1.SelectedItems,
DragDropEffects.Copy | DragDropEffects.Move);
}