吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1813|回复: 11
收起左侧

[学习记录] C# 文件拖放学习笔记

  [复制链接]
Cool_Breeze 发表于 2021-7-8 09:31
本帖最后由 Cool_Breeze 于 2021-7-8 09:34 编辑

[C#] 纯文本查看 复制代码
using System;
using System.Windows.Forms;
using System.Drawing;
using System.Text;
using System.IO;

class Program
{
    [STAThread]
    static void Main()
    {
        Application.Run(new MyForm());
    }
}

class MyForm : Form
{
    public MyForm()
    {
        this.Size = new Size(600, 600);
        this.Text = "AllowDrop";
        this.StartPosition = FormStartPosition.CenterScreen;
        this.AllowDrop = true;
        
        // this.TransparencyKey = Color.Green;
        TextBox inputTbox = new TextBox();
        inputTbox.Size = new Size(300, 500);
        inputTbox.Location = new Point(5, 10);
        inputTbox.AllowDrop = true;
        inputTbox.Multiline = true;
        
        // 在将对象拖入控件的边界时发生。
        inputTbox.DragEnter += (o, e) =>
        {
            // 指定拖放效果
            e.Effect = DragDropEffects.All;
            // 移除这些后缀文件
            string[] removeFileExtensions = {".lnk", ".url"};
            // 解决 66CCFF 报透明色 加上 ff
            unchecked{
                inputTbox.BackColor = Color.FromArgb((int)0xff66CCFF);
            }
            var str = new StringBuilder();
            string extension = "";
            // 文件类型 DataFormats.FileDrop
            foreach (var n in (string[])e.Data.GetData(DataFormats.FileDrop))
            {
                extension = Path.GetExtension(n);
                // 判断文件后缀
                if (Array.Exists(removeFileExtensions,
                                 ext => { return (ext == extension) ? true:false;}
                                )
                   ) continue;
                str.Append(n);
                str.Append("\r\n");
            }
            inputTbox.Text = str.ToString();
        };
        
        // 将对象拖出控件的边界时发生。
        inputTbox.DragLeave += (o, e) =>
        {
            unchecked{
                inputTbox.BackColor = Color.FromArgb((int)0xff99CCFF);
            }
        };
        
        this.Controls.Add(inputTbox);
    }
}
image.png

免费评分

参与人数 3吾爱币 +5 热心值 +3 收起 理由
苏紫方璇 + 3 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
qinling072 + 1 + 1 热心回复!
明月相照 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

XiaoLiuGe300 发表于 2021-7-8 09:35
谢谢分享,向大佬学习
netfan 发表于 2021-7-8 09:54
wuai10753 发表于 2021-7-8 10:23
Imagawa-451 发表于 2021-7-8 10:35
感谢分享
零下八度 发表于 2021-7-8 10:50
可以,面向纯手打编程,给你支持一个。
ONELDD 发表于 2021-7-8 11:18
可以 可以
qinling072 发表于 2021-7-8 11:29
刚好能用着,谢谢。
一样地结局 发表于 2021-7-8 13:16
感谢分享
pearpear888 发表于 2021-7-8 16:43
感谢分享,哈哈哈
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 00:39

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表