Microsoft
Software
Hardware
Network
Question : Using dragdrop, how to "reset" color of a label when mouse leaves and drop has not occurred?
To create a simple example:
1. Begin a new WinForms project named TEST DragDrop.
2. On Form1, use the toolbox to:
- Add label1 and set Properties to AllowDrop.
- Add label2 and set Properties to AllowDrop.
- Add richTextBox1 and set Properties to EnableAutoDragDrop.
3. Modify the code in Form1 to look like this:
public Form1()
{
InitializeComponent();
}
private void AnyLabel_DragEnter(object sender, DragEventArgs e)
{
//Get sender
Label lbl = (Label)sender;
lbl.BackColor = Color.Green;
if (e.Data.GetDataPresent(Dat
aFormats.T
ext))
e.Effect = DragDropEffects.Copy;
else
e.Effect = DragDropEffects.None;
}
private void AnyLabel_DragDrop(object sender, DragEventArgs e)
{
//Get sender and insert text string
Label lbl = (Label)sender;
lbl.Text = (string)e.Data.GetData(Dat
aFormats.T
ext, false);
}
}
4. In Properties, for each label click Events and:
- For DragEnter, select AnyLabel_DragEnter
- For DragDrop, select AnyLabel_DragDrop
5. Compile and run. Type some text into the textbox, select the text, and drag the text to label1 and continue dragging to label2. Drop the text on label2.
COMMENTS: The problem is that when the drop is not released and the mouse leaves label1, the BackColor should reset to normal. Then the mouse could travel back and forth between each label (showing "green" then "not green") until the drop is released.
Answer : Using dragdrop, how to "reset" color of a label when mouse leaves and drop has not occurred?
Handle DragLeave for the label and in that handler set the back color back to the default like:
private void AnyLabel_DragLeave(object sender, EventArgs e)
{
Label lbl = (Label)sender;
lbl.BackColor = defaultLabelBackColor;
}
Random Solutions
How to block web proxys like ninjacloak.com?
VMWare converter ?
SSG5 VPN Routing, internal LAN route works, VPN route doesnt.
Setting up of a Forest Trust
Looking for library descriptions - not in qsys2.schemata(_S)
as3 access an object inside a loaded swf
port 443 closed
Appointment booking app or service for field engineers?
AJAX, JQUERY, server date timestamp
Dell Latitude Laptop - Will Not Shutdown, Startup Slow