使用C#的Windows窗体中的DataGridView

本文关键字:DataGridView 窗体 Windows 使用 | 更新日期: 2023-09-27 18:25:37

这里我需要创建一个网格视图并从文本文件中添加值。文本文件包含电子邮件ID列表。在逐行显示这些电子邮件ID后,我需要逐个获取这些ID,并用"@"字符将其拆分。在接下来的几列中,我需要显示这些拆分值。如下

Email             username   domain
abcd@gmail.com     abcd      gmail
catdog@gmail.com   catdog    gmail

使用C#的Windows窗体中的DataGridView

创建类Email:

public class Email
{
    public Email(string email)
    {
        Address = email;
        int index = email.IndexOf('@');
        UserName = email.Substring(0, index);
        Domain = email.Substring(index + 1);
    }
    public string Address { get; private set; }    
    public string UserName { get; private set; }    
    public string Domain { get; private set; }
}

数据将你的网格绑定到这个类的实例:

var emails = from line in File.ReadLines(fileName)
             select new Email(line);
grid.DataSource = emails.ToList();

若需要将第一列命名为Email,则手动添加列,并为每列提供电子邮件类属性的名称DataPropertyName

更新:System.Net.Mail命名空间中已经存在类MailAddress,您可以将其用于相同的目的:

var emails = from line in File.ReadLines(fileName)
             select new MailAddress(line);

它具有属性AddressUserHost,可满足您的需求。