private void ShellTreeView_KeyDown(object sender, KeyEventArgs e) {
if ((Control.ModifierKeys & Keys.Control) == Keys.Control) {
switch (e.KeyCode) {
case Keys.C:
this.CopySelectedFiles();
break;
case Keys.V:
this.PasteAvailableFiles();
break;
case Keys.X:
this.CutSelectedFiles();
break;
}
} else if (e.KeyCode == Keys.F2) {
this.RenameSelectedNode();
} else if (e.KeyCode == Keys.F5) {
this.RefreshContents();
} else if (e.KeyCode == Keys.Escape) {
var item = new TVITEMW() { mask = TVIF.TVIF_STATE, stateMask = TVIS.TVIS_CUT, state = 0, hItem = this.cuttedNode.Handle };
User32.SendMessage(this.ShellTreeView.Handle, MSG.TVM_SETITEMW, 0, ref item);
Clipboard.Clear();
}
}