Есть функция которая выводит все сообщения из INBOX в listbox(lbPreview)
lbPreview у меня только для вывода превью сообщения
private Task LoadFull()
{
return Task.Run(() =>
{
try
{
using (var client = new ImapClient())
{
using (var cancel = new CancellationTokenSource())
{
client.Connect("imap.gmail.com", 993, true, cancel.Token);
client.Authenticate("mymail@gmail.com", "mypassword", cancel.Token);
// get message from INBOX
var inbox = client.Inbox;
inbox.Open(FolderAccess.ReadOnly, cancel.Token);
// show in toolbox
Application.Current.Dispatcher.Invoke(new Action(() =>
{
txtCountMessage.Text = inbox.Count.ToString();
}));
// for all message
Application.Current.Dispatcher.Invoke(new Action(() =>
{
for (int i = 0; i < inbox.Count; i++)
{
var message = inbox.GetMessage(i, cancel.Token);
lbPreviewMail.Items.Add(message.Subject);
}
}));
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
});
}
Так же у меня есть ещё один listbox

Как сделать чтобы при нажатии на lbPreview в lbAllMessage вывести всё сообщение?!
ListBoxи др.), что очень плохо, ибо так вы сами себя связываете, оставляя минимальное место для дальнейших маневров. По-хорошему, все сообщения, должны быть в виде отдельных классов, а еще лучше, должны быть привязаны к UI, а не заданы напрямую. И да, не забывайте ставить все метки вопросу (c#)! – EvgeniyZ Sep 26 '21 at 11:09как показать выбраное сообщение– Purple Pig Sep 27 '21 at 04:41Делайте тогда дальше костыли в виде события выбора. – EvgeniyZ Sep 27 '21 at 11:37