【发布时间】:2016-05-28 00:22:09
【问题描述】:
private int numberofallmessages = 0;
private int countMsg = 0;
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
OpenPop.Pop3.Pop3Client PopClient = new OpenPop.Pop3.Pop3Client();
PopClient.Connect("mail", 110, false);
PopClient.Authenticate("me", "me",
OpenPop.Pop3.AuthenticationMethod.UsernameAndPassword);
int messageCount = PopClient.GetMessageCount();
numberofallmessages = messageCount;
allMessages = new List<OpenPop.Mime.Message>(messageCount);
for (int i = messageCount; i > 0; i--)
{
if (backgroundWorker1.CancellationPending == true)
{
e.Cancel = true;
return;
}
allMessages.Add(PopClient.GetMessage(i));
int nProgress = (messageCount - i + 1) * 100 / messageCount;
backgroundWorker1.ReportProgress(nProgress, PopClient.GetMessageCount().ToString() + "/" + i);
}
PopClient.Disconnect();
}
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
pbt.Value = e.ProgressPercentage;
pbt.Text = e.ProgressPercentage.ToString() + "%";
pbt.Invalidate();
label8.Text = e.UserState.ToString();
label8.Visible = true;
lstMail.Items.Add(allMessages[countMsg].Headers.Subject + " " + allMessages[countMsg].Headers.DateSent);
countMsg += 1;
}
在 ProgressChanged 事件中,我将项目添加到 listView(lstMail)。
lstMail.Items.Add(allMessages[countMsg].Headers.Subject + " " + allMessages[countMsg].Headers.DateSent);
但是这一行将继续将 DateSent 添加到第一个选项卡而不是日期选项卡:
有一个主题选项卡和一个日期选项卡,我想要那个部分
allMessages[countMsg].Headers.DateSent
将在日期选项卡下。
【问题讨论】:
-
“标签”是指“列”吗?如果是这样,请参阅C# listView, how do I add items to columns 2, 3 and 4 etc?
-
您是否尝试过使用调试器来单步调试代码,或者您只是在运行它并希望事情能如您所愿......?