Windows有一项功能,您可以将文件拖到程序或快捷方式上,它会说"打开方式(程序名称)"我希望能够为我的程序执行此操作,当我打开文件时可以转到我的程序的文本编辑器部分。
string filePath = //Find path of file just opened
form_editScript edit = new form_editScript(filePath);
edit.Show();
Hide();
答案 0 :(得分:1)
为了能够处理“打开方式...”,您需要从args
Main
方法获取文件路径:
static void Main(string[] args)
{
string filePath = args.FirstOrDefault();
....
Application.Run(new form_editScript(filePath))
对于拖放部分,您必须将表单的AllowDrop
属性设置为true
,然后订阅DragEnter
和DragDrop
个事件。在DragEnter
检查Data
是否为文件,然后允许删除。在DragDrop
中,您将获得包含要删除的文件的字符串数组:
private void Form1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.Link;
}
}
private void Form1_DragDrop(object sender, DragEventArgs e)
{
string filePath = ((string[]) e.Data.GetData(DataFormats.FileDrop))[0];
....