Как насчет:
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
outlookNameSpace = this.Application.GetNamespace("MAPI");
inbox = outlookNameSpace.GetDefaultFolder(
Microsoft.Office.Interop.Outlook.
OlDefaultFolders.olFolderInbox);
items = inbox.Items;
items.Sort("[ReceivedTime]", true);
Outlook.TableView CurView = ((Outlook.TableView)inbox.CurrentView);
var viewField = CurView.ViewFields["Categories"];
var columnFormat = viewField.ColumnFormat;
columnFormat.Align = Outlook.OlAlign.olAlignRight;
columnFormat.Width = 10;
CurView.Save();
CurView.Apply();
}
Если это работает, я предлагаю вам изменить код, чтобы проверить, присутствует ли поле Categories
, и добавить его, если нет ... Либо вы можете удалить все столбцы и добавить только те, которые вам нужны:
// remove all columns
while (CurView.ViewFields.Count > 1)
{
CurView.ViewFields.Remove(1);
}
// re-add needed columns
CurView.ViewFields.Add("Categories");
CurView.ViewFields.Add("ReceivedTime");
CurView.ViewFields.Add("Subject");