我有一个允许拖放的图像管理器应用程序。拖入图像时,我执行此行以获取图像的路径和名称。
public bool GetFileName(out string _filename, DrageventArgs E)
{
_filename = String.Empty;
Array data = ((System.Windows.Forms.IDataObject)e.Data).GetData("FileName") as Array;
...
}
该行来自This article,因此对于我的水平来说它可能太高级了,但它运行得很好,我认为我已经足够了解它的用途。
但是,我在获取正确的图片标题时遇到了问题。我怀疑“文件名”数据可能是原因,因为当拖动一个名为“Phare.jpg”的图像时,我得到的字符串是
"C:\Users\\Public\Pictures\SAMPLE~1\LIGHTH~1.JPG".
“LIGHTH”位基本上是“phare”,但用英文......至少是第一个字母。也许我没有提取正确的数据?有一个更好的方法吗?我可以尝试提取与“文件名”不同的数据吗?