Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DragDrop, из внешнего в мое приложение 
V
    Опции темы
Moid
Дата 3.4.2008, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Народ помогите пожалуйста, 
сделал перетаскивание картинки из моего приложения во внешние (Point, Explorer, ...),
теперь нужно обратное. Схватить графический файл к примеру из папки и перетащить в мое приложение с именем и изображением ест-но.
Перетаскивание из своего приложения делал так:
Код

private void CaseTreeView_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left) 
            {
                StringCollection ss = new StringCollection();
                ss.Add(tmpDirImage);
                DataObject dobj = new DataObject();
                dobj.SetFileDropList(ss);
                DragDropEffects dde = this.DoDragDrop(dobj, DragDropEffects.Copy);
                if ((dde & DragDropEffects.Copy) == DragDropEffects.Copy)
                {
                    //---
                }            
            }
        }



--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
mr.DUDA
Дата 3.4.2008, 20:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 24
Всего: 232



Нужно поставить у контрола AcceptsDrop=true и обрабатывать DragOver (ставить e.Effect=DragDropEffects.Copy) и DragDrop (принимать что там пришло в IDataObject).


--------------------
user posted image
PM MAIL WWW   Вверх
vponomarov
Дата 3.4.2008, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 11.8.2007
Где: Киев

Репутация: 5
Всего: 12



Moid, как-то кривовато получилось, но работает
дальше как-нибудь сам smile 
Код

private void Form1_DragEnter(object sender, DragEventArgs e)
        {
            if (e.Data.GetDataPresent("FileName"))
            {

                string[] items = (string[])e.Data.GetData("FileName");
                pictureBox1.Image = Image.FromFile(items[0]);
            }

        }


З.Ы. так можно получить картинку из эксплорера


--------------------
user posted image
user posted image
PM MAIL ICQ   Вверх
vponomarov
Дата 4.4.2008, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 11.8.2007
Где: Киев

Репутация: 5
Всего: 12



все, разобрался smile 
в DragEnter нужно проверить есть ли в перетаскиваемом объекте нужные тебе данные и если есть - поставить e.Effect = DragDropEffects.Copy; (ну или другой эфект по желанию)
а потом уже в DragDrop пишешь код, который я написал в предыдущем посте
все smile 


--------------------
user posted image
user posted image
PM MAIL ICQ   Вверх
Moid
Дата 4.4.2008, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: нет
Всего: 3



Огромное спасибо.
+1.


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0701 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.