Diskuze: Drag eventy pro všechny

C# .NET .NET (C# a Visual Basic) Drag eventy pro všechny American English version English version

Avatar
matesax
Redaktor
Avatar
matesax:

Dobrý den,
potřeboval bych FormDrag event zprovoznit o pro componenty - aby to šlo i po přetáhnutí souboru na componenty...

 
Odpovědět 28.7.2012 19:13
Avatar
Odpovídá na matesax
David Jančík [sczdavos]:

Ahoj,
myslíš jako přetáhnout soubor například na tlačítko?

Nahoru Odpovědět 28.7.2012 23:23
Čím více času dostaneš, tím méně ho máš.
Avatar
matesax
Redaktor
Avatar
 
Nahoru Odpovědět 29.7.2012 5:56
Avatar
Odpovídá na matesax
David Jančík [sczdavos]:

Povolíš mu to v konstruktoru a pak nastavíš dané eventy. Tady máš ukázku:

public partial class Form1 : Form
 {
   public Form1()
   {
     InitializeComponent();
   }

   private void Form1_Load(object sender, EventArgs e)
   {
     textBox1.AllowDrop = true;
     textBox1.DragEnter += new DragEventHandler(textBox1_DragEnter);
     textBox1.DragDrop += new DragEventHandler(textBox1_DragDrop);

   }

   private void textBox1_DragEnter(object sender, DragEventArgs e)
   {
     if (e.Data.GetDataPresent(DataFormats.FileDrop))
       e.Effect = DragDropEffects.Copy;
     else
       e.Effect = DragDropEffects.None;
   }

   private void textBox1_DragDrop(object sender, DragEventArgs e)
   {
     string[] FileList = (string[])e.Data.GetData(DataFormats.FileDrop, false);


   string s="";

   foreach (string File in FileList)
   s = s+ " "+ File ;
   textBox1.Text = s;
   }
 }
Nahoru Odpovědět 29.7.2012 10:28
Čím více času dostaneš, tím méně ho máš.
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Jančík [sczdavos]
matesax:

Dělám ve VS, takže to nemusím řešit. Stačilo napsat, že se jedná o AllowDrop... :) Děkuji.

 
Nahoru Odpovědět 29.7.2012 10:49
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Jančík [sczdavos]
matesax:

Small problem - skutečně mi to teď bere v mnohých componentech - menu stripech, ovšem kromě toho textboxu, pro který jsem to hlavně chtěl... :)

 
Nahoru Odpovědět 29.7.2012 19:00
Avatar
Odpovídá na matesax
David Jančík [sczdavos]:

Zkoušel jsi přiloženou ukázku?

Nahoru Odpovědět 29.7.2012 19:31
Čím více času dostaneš, tím méně ho máš.
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Jančík [sczdavos]
matesax:

Jde přeci o to AllowDrop - to mám povolené a textbox mi to nebere. Nic jiného snad není třeba řešit - ne?

 
Nahoru Odpovědět 29.7.2012 19:51
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.