![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| JeksonS |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 2.10.2008 Репутация: нет Всего: нет |
using System;
using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Media; namespace WinApp2 { public class Form1 : Form { public Form1() { private System.ComponentModel.IContainer components = null; protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Windows Form Designer generated code private void InitializeComponent() { this.label1 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label(); this.SuspendLayout(); // // label1 // this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(23, 25); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(35, 13); this.label1.TabIndex = 0; this.label1.Text = "label1"; this.label1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.label1_MouseDown); this.label1.GiveFeedback += new System.Windows.Forms.GiveFeedbackEventHandler(this.label1_GiveFeedback); // // label2 // this.label2.AllowDrop = true; this.label2.AutoSize = true; this.label2.Location = new System.Drawing.Point(216, 25); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(35, 13); this.label2.TabIndex = 0; this.label2.Text = "label2"; this.label2.DragDrop += new System.Windows.Forms.DragEventHandler(this.label2_DragDrop); // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(292, 271); this.Controls.Add(this.label2); this.Controls.Add(this.label1); this.Name = "Form1"; this.Text = "Form1"; this.ResumeLayout(false); this.PerformLayout(); } #endregion private System.Windows.Forms.Label label1; private System.Windows.Forms.Label label2; InitializeComponent(); CenterToScreen(); } private void label2_DragDrop(object sender, DragEventArgs e) { label2.Text = label1.Text; } private void label1_MouseDown(object sender, MouseEventArgs e) { DragDropEffects dde = label1.DoDragDrop(label1.Text, DragDropEffects.All | DragDropEffects.Copy); } } } ================================ Подскажите, пожалуйста. Все события в этом коде перепробовал - всё работает, а вот, событие DragDrop не работает. Всё что можно было, уже прочитал и поискал. Заранее спасибо. Если можно, ткните меня м MSDN, где это описано. Это сообщение отредактировал(а) JeksonS - 2.10.2008, 02:41 |
|||
|
||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 8 Всего: 67 |
может AllowDrop стоит в false?
-------------------- СУВ, Partizan. |
|||
|
||||
| Retro |
|
|||
![]() Диалектик ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1934 Регистрация: 28.6.2005 Где: Киев Репутация: 3 Всего: 117 |
JeksonS, лучше бы выложил проект в архиве, так проще помочь и быстрее.
|
|||
|
||||
| JeksonS |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 2.10.2008 Репутация: нет Всего: нет |
Выкладываю весь проект, так лучше будет, действительно.
А для Partizan специально скажу, что из текста видно, что "this.label2.AllowDrop = true;", а вообще, спасибо за то что откликнулся. Самое интересное, в MSDN дан пример со списками и там всё работает.Я пробовал с кнопками и с метками - не работает. Может где-то что-то упустил? Присоединённый файл ( Кол-во скачиваний: 5 )
WinApp2.rar 33,24 Kb |
|||
|
||||
| Retro |
|
|||
![]() Диалектик ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1934 Регистрация: 28.6.2005 Где: Киев Репутация: 3 Всего: 117 |
JeksonS, куда ты драгаешь и дропаешь элементы?
Вот примеры, да и вообще сайт хороший: http://www.codeproject.com/KB/cs/dandtutorial.aspx http://www.codeproject.com/KB/dotnet/csdragndrop01.aspx |
|||
|
||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 8 Всего: 67 |
вообще говоря если добавить этот код:
то всё начинает работать))) з.ы. к событию DragEnter этот обработчик тоже привязать неплохо бы) -------------------- СУВ, Partizan. |
|||
|
||||
| JeksonS |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 2.10.2008 Репутация: нет Всего: нет |
Огромадное спасибо Partizan!!! Вы настоящий Человечище
Вообще-то, специально перечитал ещё раз MSDN, обратил внимание на DragEventArgs, но снова ничего такого не написано про свойтво DragEventArgs.Effect. Сказано только, что оно { get; set; }, а что оно отвечает за возникновение следующего события - ничего не сказано. Не знаю как это назвать. Получается, что нужно установить свойство DragEventArgs.Effect перед событием DragDrop и это строго!. Но где это описано??? Возможно, это тоже частица "внутреннего тумана" платформы .NET, как написал Троелсен в своей книжке? В любом случае, спасибо вам огромное ещё раз, теперь буду спать спокойно ... какое-то время |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | .NET для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |