Drag & Drop entre deux comboBox ?
Bonjour,
J'essaye de faire du Drag & Drop entre deux Combo Box. Le problème de ça c'est que le fait de mettre du code dans le Mouse_Down me bloque au niveau de l'affichage de la liste (ouverture et fermeture quasi immédiat de ma liste) que je ne peux plus visualiser pour eventuellement sélectionner un autre élément de ma combo Box.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| private void cboGenre1_MouseDown(object sender, MouseEventArgs e)
{
// Plus utilisé, sinon bloque l'affichage du contenu de la liste déroulante
ComboBox txt = (ComboBox)sender;
txt.Select();
txt.DoDragDrop(txt.Text, DragDropEffects.Copy);
Application.DoEvents();
}
private void cboGenre1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.Text))
{
e.Effect = DragDropEffects.Copy;
}
else
{
e.Effect = DragDropEffects.All;
}
}
private void cboGenre1_DragDrop(object sender, DragEventArgs e)
{
string ilVientDeLoin = (string)e.Data.GetData(DataFormats.Text);
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| private void cboGenre2_MouseDown(object sender, MouseEventArgs e)
{
// Plus utilisé, sinon bloque l'affichage du contenu de la liste déroulante
ComboBox txt = (ComboBox)sender;
txt.Select();
txt.DoDragDrop(txt.Text, DragDropEffects.Copy);
Application.DoEvents();
}
private void cboGenre2_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.Text))
{
e.Effect = DragDropEffects.Copy;
}
else
{
e.Effect = DragDropEffects.All;
}
}
private void cboGenre2_DragDrop(object sender, DragEventArgs e)
{
string ilVientDeLoin = (string)e.Data.GetData(DataFormats.Text);
} |
Dans les propriétés des combo, seule modification pour AllowDrop.
Merci par avance.