gpt4 book ai didi

c# - WPF 文件放置事件 : just allow a specific file extension

转载 作者:可可西里 更新时间:2023-11-01 08:04:39 25 4
gpt4 key购买 nike

我有一个 WPF 控件,我想将一个特定的文件从我的桌面拖放到这个控件中。这不是很重要的部分,但我想检查文件扩展名以允许或禁止删除。解决此问题的最佳方法是什么?

最佳答案

我认为这应该可行:

<Grid>
<ListBox AllowDrop="True" DragOver="lbx1_DragOver"
Drop="lbx1_Drop"></ListBox>
</Grid>

假设您只想允许 C# 文件:

private void lbx1_DragOver(object sender, DragEventArgs e)
{
bool dropEnabled = true;
if (e.Data.GetDataPresent(DataFormats.FileDrop, true))
{
string[] filenames =
e.Data.GetData(DataFormats.FileDrop, true) as string[];

foreach (string filename in filenames)
{
if(System.IO.Path.GetExtension(filename).ToUpperInvariant() != ".CS")
{
dropEnabled = false;
break;
}
}
}
else
{
dropEnabled = false;
}

if (!dropEnabled)
{
e.Effects = DragDropEffects.None;
e.Handled = true;
}
}


private void lbx1_Drop(object sender, DragEventArgs e)
{
string[] droppedFilenames =
e.Data.GetData(DataFormats.FileDrop, true) as string[];
}

关于c# - WPF 文件放置事件 : just allow a specific file extension,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/724774/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com