private void DraggableIcon_ItemDrag(object sender, ItemDragEventArgs e)
{
try
{
using (var tsf = new TemporarySaveFile(this))
{
DataObject obj = new DataObject();
if (DraggableIcon.Items[0].Text.StartsWith("text/"))
{
string data_ = new StreamReader(tsf.data).ReadToEnd();
obj.SetText(data_, DraggableIcon.Items[0].Text == "text/html" ? TextDataFormat.Html : TextDataFormat.UnicodeText);
}
else if (DraggableIcon.Items[0].Text.StartsWith("image/"))
{
var data_ = new Bitmap(tsf.data);
obj.SetImage(data_);
}
else
obj.SetData(tsf.data);
tsf.data.Close();
obj.SetData(DataFormats.FileDrop, true, new String[] { tsf.tempfilename });
disable_scrolling = true;
try
{
DraggableIcon.DoDragDrop(obj, DragDropEffects.All);
}
finally
{
disable_scrolling = false;
}
}
}
catch (Exception ex)
{
MessageBox.Show(this, "Error when dragging file: " + ex.ToString(), "Error from BEurtle", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}