如何在 Windows 窗体 C# 的 datagridview 上使用打开文件对话框显示选定的文件名

How to display selected file names with openfiledialog on datagridview in WindowsForms C#

我将一个列表设置为我的 DGV 的数据源。我想 select 文件,然后在 DGV 的某个列下添加 selected 文件的名称和格式,为每个文件添加行。 到目前为止,我已经用谷歌搜索了,但所有答案都是针对给定 'by the user' 的数据,例如用户给出的姓名和年龄。但是,我需要的是程序读取信息(名称和格式)而无需用户输入。

欢迎并感谢任何帮助!

private void button2_Click(object sender, EventArgs e) //Dokument auswählen
{
 
   OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "Word(*.docx)| *.docx|PPT(*.pptx)|*.pptx|PDF(*.pdf)|*.pdf|Alle Dateien(*.*)|*.*";
            ofd.Multiselect = true;
            List<DateienList> dateienlist = new List<DateienList>();
            
                if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                   //Don't know what to do here.
                }
   }           

private void dataGridView1_CellContentClick_1(object sender, DataGridViewCellEventArgs e)
        {    
            BindingList<DateienList> myList = new BindingList<DateienList>();
            dataGridView1.DataSource = myList;  //Datasource set    
        }

class DateienList //datasource, the list
    {
        [DisplayName("Dateiennamen")]
        public string Dateiennamen { get; set; }
        [DisplayName("Neue Dateiennamen")]
        public string Neue_Dateiennamen { get; set; }
        [DisplayName("Anzahl Kopien")]
        public int Anzahl_Kopien { get; set; }
        [DisplayName("Umlaut Entfernen")]
        public bool Umlaut_Entfernen { get; set; }
        [DisplayName("PDF Erzeugen")]
        public bool PDF_Erzeugen { get; set; }
        [DisplayName("Wasserzeichen Hinzufügen")]
        public bool Waasserzeichen_Hinzufügen { get; set; }
    }
}
private void button2_Click(object sender, EventArgs e) //Dokument auswählen
        {
            //This should be done in Form load event
            BindingList<DateienList> myList = new BindingList<DateienList>();
            dataGridView1.DataSource = myList;  //Datasource set    

            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "Word(*.docx)| *.docx|PPT(*.pptx)|*.pptx|PDF(*.pdf)|*.pdf|Alle Dateien(*.*)|*.*";
            ofd.Multiselect = true;
            List<DateienList> dateienlist = new List<DateienList>();

            if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                //Loop the files selected from dialog, and find information here.
                foreach (var item in ofd.FileNames)
                {
                    DateienList tmp= new DateienList();
                    tmp.Dateiennamen = item;
                    FileInfo fileInfo = new FileInfo(item);
                    if (fileInfo.Extension.ToLower().Equals(".pdf"))
                    {
                        tmp.PDF_Erzeugen = true;
                        tmp.Umlaut_Entfernen = false;
                        tmp.Waasserzeichen_Hinzufügen = false;
                    } 
                    // check for other file types
                    myList.Add(tmp);
                }
            }
            
        }