private object[] GetIndexesFromPageNumber(int pageNumber) { WebmailSettings settings = (new WebMailSettingsCreator()).CreateWebMailSettings(); int msgPerPage = settings.MailsPerPage; int msgCount = _pop3Obj.InboxMessageCount; if ((_account != null) && (_account.UserOfAccount != null) && (_account.UserOfAccount.Settings != null)) { msgPerPage = _account.UserOfAccount.Settings.MsgsPerPage; } int startIndex = 1; int length = msgPerPage; if ((pageNumber * msgPerPage) > msgCount) { if (msgCount > msgPerPage) { length = msgCount % msgPerPage; } else { length = msgCount; } } else { startIndex = (msgCount - (pageNumber * msgPerPage)) + 1; } ArrayList arr = new ArrayList(); for (int i = 0; i < length; i++) { if (((startIndex + i) <= _pop3Obj.InboxMessageCount) && ((startIndex + i) > 0)) { arr.Add(_pop3Obj.GetMessageUidFromIndex(startIndex + i)); } } return(arr.ToArray()); }