2013-07-30 69 views
-4

这里我需要创建一个gridview并从文本文件中添加值。文本文件包含电子邮件ID列表。在逐行显示这些电子邮件ID后,我需要一个接一个地取出并用“@”字符分割。在接下来的列中,我需要显示这些分割值。就像如下使用C#的Windows窗体中的DataGridView

Email    username domain 

[email protected]  abcd  gmail 
[email protected] catdog gmail 
+0

您可以雇用某人,我们不会为您编写代码。 – FSou1

+1

你尝试过什么,或者它只是做我的作业问题? –

+0

当您提问时,请提供您已有的代码。 –

回答

2

创建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

UPDATE:目前已经存在MailAddressSystem.Net.Mail命名空间,你可以使用同样的目的:

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

它具有性能AddressUserHost它满足您的需求。

+1

非常感谢@lazybereZovsky ...对不起,我忘了发布我的编码 – yasmuru

相关问题