728x90
반응형
728x170
▶ CustomAddIn.cs
using Microsoft.Office.Interop.Outlook;
using System;
namespace TestProject
{
/// <summary>
/// 커스텀 애드인
/// </summary>
public partial class CustomAddIn
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Private
#region 커스텀 애드인 시작시 처리하기 - CustomAddIn_Startup(sender, e)
/// <summary>
/// 커스텀 애드인 시작시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private void CustomAddIn_Startup(object sender, EventArgs e)
{
try
{
string parentFolderName = "세일즈포스";
string childFolderName = "테스트";
string storageIdentifier = "SalesForce";
string propertyName = "SFID";
string propertyValue = "SFID3";
Folder parentFolder = Application.ActiveExplorer().Session.Folders[1].Folders[parentFolderName] as Folder;
Folder childFolder = parentFolder.Folders[childFolderName] as Folder;
StorageItem storageItem = childFolder.GetStorage(storageIdentifier, OlStorageIdentifierType.olIdentifyBySubject);
UserProperty property1 = storageItem.UserProperties[propertyName];
if(property1 == null)
{
System.Windows.Forms.MessageBox.Show($"{childFolderName} 폴더에 {propertyName} 속성이 없습니다.");
}
else
{
System.Windows.Forms.MessageBox.Show($"{childFolderName} 폴더의 {propertyName} 속성 값은 [{property1.Value}] 입니다.");
return;
}
storageItem.UserProperties.Add(propertyName, OlUserPropertyType.olText).Value = propertyValue;
storageItem.Save();
System.Windows.Forms.MessageBox.Show($"{childFolderName} 폴더의 {propertyName} 속성에 [{propertyValue}] 값을 추가했습니다.");
UserProperty property2 = storageItem.UserProperties[propertyName];
if(property2 == null)
{
System.Windows.Forms.MessageBox.Show($"{childFolderName} 폴더에 {propertyName} 속성이 없습니다.");
}
else
{
System.Windows.Forms.MessageBox.Show($"{childFolderName} 폴더의 {propertyName} 속성 값은 [{property2.Value}] 입니다.");
}
}
catch(System.Exception exception)
{
System.Windows.Forms.MessageBox.Show(exception.ToString());
}
}
#endregion
#region 커스텀 애드인 셧다운시 처리하기 - CustomAddIn_Shutdown(sender, e)
/// <summary>
/// 커스텀 애드인 셧다운시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private void CustomAddIn_Shutdown(object sender, EventArgs e)
{
}
#endregion
#region VSTO에서 생성한 코드
/// <summary>
/// 디자이너 지원에 필요한 메서드입니다.
/// 이 메서드의 내용을 코드 편집기로 수정하지 마세요.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(CustomAddIn_Startup );
this.Shutdown += new System.EventHandler(CustomAddIn_Shutdown);
}
#endregion
}
}
728x90
반응형
그리드형(광고전용)
댓글을 달아 주세요