<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        c#中實現文件拖放打開的方法

        來源:懂視網 責編:小采 時間:2020-11-27 22:45:44
        文檔

        c#中實現文件拖放打開的方法

        c#中實現文件拖放打開的方法:C#實現文件拖放并打開文件 需要知道的ListBox的兩個事件:當您在控件的邊界內拖動對象時,便會發生 DragEnter 事件;該事件用于確 定當前拖動的對象是不是您要放到控件上的對象。 在將一個或多個文件拖到控件上時,需要處理此事件。 這使 得在將對象拖到控件
        推薦度:
        導讀c#中實現文件拖放打開的方法:C#實現文件拖放并打開文件 需要知道的ListBox的兩個事件:當您在控件的邊界內拖動對象時,便會發生 DragEnter 事件;該事件用于確 定當前拖動的對象是不是您要放到控件上的對象。 在將一個或多個文件拖到控件上時,需要處理此事件。 這使 得在將對象拖到控件

        C#實現文件拖放并打開文件

        需要知道的ListBox的兩個事件:當您在控件的邊界內拖動對象時,便會發生 DragEnter 事件;該事件用于確

        定當前拖動的對象是不是您要放到控件上的對象。 在將一個或多個文件拖到控件上時,需要處理此事件。 這使

        得在將對象拖到控件上方時,能夠根據所拖動的對象顯示相應的圖標。 將拖動的對象釋放到控件上時,會發生

        DragDrop 事件。

        功能描述:向ListBox拖入一個文件,ListBox顯示該文件的路徑,然后單擊該路徑,點擊Open按鈕打開該文件。

        代碼實現:

        需要將ListBox的AllowDrop屬性改為true,并實現它的DragEnter、DragDrop這兩個事件。

        代碼如下:
        using System;
        using System.Collections.Generic;
        using System.ComponentModel;
        using System.Data;
        using System.Drawing;
        using System.Linq;
        using System.Text;
        using System.Windows.Forms;

        namespace DragDrop
        {
            public partial class DragDrop : Form
            {
                public string FilePath;

                public DragDrop()
                {
                    InitializeComponent();
                }

                /// <summary>
                /// 獲取ListBox的值。
                /// </summary>
                /// <returns></returns>
                public string GetListBoxItem()
                {
                    string filePath = string.Empty;

                    bool isSelected = IsListBoxSelected();

                    if (isSelected==true)
                    {
                        string listBoxItemValue = lbFilePath.SelectedItem.ToString();

                        filePath = listBoxItemValue;
                    }
                    else
                    {
                        MessageBox.Show("ListBox must be selected.");
                    }

                    return filePath;
                }

                /// <summary>
                /// ListBox內的值是否被選中。
                /// </summary>
                /// <returns></returns>
                public bool IsListBoxSelected()
                {
                    bool selected;

                    if (lbFilePath.SelectedIndex == -1)//SelectedIndex==-1時,表示未選中任何項。
                    {
                        selected = false;
                    }
                    else
                    {
                        selected = true;
                    }

                    return selected;
                }

                private void lbFilePath_DragEnter(object sender, DragEventArgs e)
                {
                    if (e.Data.GetDataPresent(DataFormats.FileDrop))
                    {
                        e.Effect = DragDropEffects.All;
                    }
                    else
                    {
                        e.Effect = DragDropEffects.None;
                    }
                }

                private void lbFilePath_DragDrop(object sender, DragEventArgs e)
                {
                    string[] s=(string[])e.Data.GetData(DataFormats.FileDrop,false);

                    for (int i = 0; i < s.Length; i++)
                    {
                        lbFilePath.Items.Add(s[i]);
                    }
                }

                private void btnOpenFile_Click(object sender, EventArgs e)
                {
                    string filePath=GetListBoxItem();

                    if (!string.IsNullOrEmpty(filePath))
                    {
                        System.Diagnostics.Process.Start(filePath);
                    }
                }
            }
        }

        總結:

        Data 對象的 GetData 方法返回一個字符串數組,該數組包含拖到該列表框控件中的文件的完整路徑名。 可以使用此文件路徑信息來執行需要對文件執行的任何操作。

        補充代碼:

        代碼如下:private void Form1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e) 
          { 
          if (e.Data.GetDataPresent(DataFormats.FileDrop)) 
          e.Effect = DragDropEffects.Link;  
          else e.Effect = DragDropEffects.None;  
          } 

          private void Form1_DragDrop(object sender, System.Windows.Forms.DragEventArgs e) 
          { 
          //其中label1.Text顯示的就是拖進文件的文件名; 
          label1.Text = ((System.Array)e.Data.GetData(DataFormats.FileDrop)).GetValue(0).ToString();  
          }  

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        c#中實現文件拖放打開的方法

        c#中實現文件拖放打開的方法:C#實現文件拖放并打開文件 需要知道的ListBox的兩個事件:當您在控件的邊界內拖動對象時,便會發生 DragEnter 事件;該事件用于確 定當前拖動的對象是不是您要放到控件上的對象。 在將一個或多個文件拖到控件上時,需要處理此事件。 這使 得在將對象拖到控件
        推薦度:
        標簽: 文件 打開 如何將
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 9久久免费国产精品特黄| 免费大片黄在线观看| 蜜桃AV无码免费看永久| 久久久久亚洲精品美女| 精品一区二区三区免费视频| 亚洲精品久久久www| 国产亚洲漂亮白嫩美女在线| 日韩精品亚洲专区在线观看| 粉色视频免费入口| 你是我的城池营垒免费看| 成年美女黄网站色大免费视频| 精品国产人成亚洲区| 国产va免费精品| 亚洲AV无码一区二区三区系列| 亚洲av无码专区在线观看亚| 免费观看国产小粉嫩喷水| 亚洲综合国产精品| 久久精品a一国产成人免费网站| 亚洲女初尝黑人巨高清| 日本免费大黄在线观看| 国产成人综合亚洲AV第一页| 青草久久精品亚洲综合专区| 亚洲乱码中文字幕综合234| 最近中文字幕大全免费版在线| 又黄又爽的视频免费看| 最新亚洲春色Av无码专区| 免费国产成人高清在线观看麻豆 | 日本h在线精品免费观看| 亚洲国产日韩在线一区| 日韩中文字幕免费| 亚洲日本一线产区和二线 | 国产三级在线免费| 最新亚洲成av人免费看| 免费无码VA一区二区三区| 久久精品亚洲综合一品| 女人与禽交视频免费看| 韩日电影在线播放免费版| 青青草原亚洲视频| 久久毛片免费看一区二区三区| 亚洲国产精品成人久久蜜臀| 美女尿口扒开图片免费|