从IDE中,在要控制数据的控件上设置AllowDrop
,然后在该控件上连接DragOver
和DragDrop
的事件。
您的代码将是这个样子:
TextBox TaskPane;
void DragNDrop(object sender, DragEventArgs e) {
if (e.Effect == DragDropEffects.Move) {
if (e.Data.GetDataPresent(DataFormats.CommaSeparatedValue)) {
string csvText = e.Data.GetData(DataFormats.CommaSeparatedValue, false).ToString();
if (!String.IsNullOrEmpty(csvText)) {
TaskPane.Text = csvText;
}
}
}
}
void DragOver(object sender, DragEventArgs e) {
if (!e.Data.GetDataPresent(DataFormats.CommaSeparatedValue)) {
e.Effect = DragDropEffects.None;
} else {
e.Effect = DragDropEffects.Move;
}
}
[拖放和拖放到自定义任务窗格在Excel VSTO(可能重复http://stackoverflow.com/questions/5670505/drag-拖放到自定义任务窗格功能于Excel的VSTO) – Gareth 2011-04-26 13:57:29