728x90
반응형
728x170
▶ CustomAddIn.cs
using Microsoft.Office.Interop.Outlook;
using System;
using System.Windows.Forms;
namespace TestProject
{
/// <summary>
/// 커스텀 애드인
/// </summary>
public partial class CustomAddIn
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Field
////////////////////////////////////////////////////////////////////////////////////////// Private
#region Field
/// <summary>
/// 탐색기
/// </summary>
private Explorer explorer;
/// <summary>
/// 현재 폴더
/// </summary>
private Folder currentFolder;
#endregion
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Private
//////////////////////////////////////////////////////////////////////////////// Event
#region 커스텀 애드인 시작시 처리하기 - CustomAddIn_Startup(sender, e)
/// <summary>
/// 커스텀 애드인 시작시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private void CustomAddIn_Startup(object sender, EventArgs e)
{
this.explorer = Application.ActiveExplorer();
this.explorer.FolderSwitch += explorer_FolderSwitch;
}
#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 현재 폴더 항목 이동 전 처리하기 - currentFolder_BeforeItemMove(item, targetFolder, cancel)
/// <summary>
/// 현재 폴더 항목 이동 전 처리하기
/// </summary>
/// <param name="item">항목</param>
/// <param name="targetFolder">타겟 폴더</param>
/// <param name="cancel">취소 여부</param>
private void currentFolder_BeforeItemMove(object item, MAPIFolder targetFolder, ref bool cancel)
{
cancel = true;
}
#endregion
#region 현재 폴더 이동 전 처리하기 - currentFolder_BeforeFolderMove(targetFolder, cancel)
/// <summary>
/// 현재 폴더 이동 전 처리하기
/// </summary>
/// <param name="targetFolder">타겟 폴더</param>
/// <param name="cancel">취소 여부</param>
private void currentFolder_BeforeFolderMove(MAPIFolder targetFolder, ref bool cancel)
{
cancel = true;
}
#endregion
#region 탐색기 폴더 전환시 처리하기 - explorer_FolderSwitch()
/// <summary>
/// 탐색기 폴더 전환시 처리하기
/// </summary>
private void explorer_FolderSwitch()
{
this.currentFolder = this.explorer.CurrentFolder as Folder;
this.currentFolder.BeforeFolderMove += currentFolder_BeforeFolderMove;
this.currentFolder.BeforeItemMove += currentFolder_BeforeItemMove;
}
#endregion
//////////////////////////////////////////////////////////////////////////////// Function
#region VSTO에서 생성한 코드
/// <summary>
/// 디자이너 지원에 필요한 메서드입니다.
/// 이 메서드의 내용을 코드 편집기로 수정하지 마세요.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(CustomAddIn_Startup );
this.Shutdown += new System.EventHandler(CustomAddIn_Shutdown);
}
#endregion
}
}
728x90
반응형
그리드형(광고전용)
'C# > Outlook' 카테고리의 다른 글
[C#/OUTLOOK] MAPIFolder 인터페이스 : PropertyAccessor 속성을 사용해 사용자 속성 추가/조회/삭제하기 (0) | 2021.07.20 |
---|---|
[C#/OUTLOOK] MAPIFolder 인터페이스 : GetStorage 메소드를 사용해 폴더 사용자 속성 추가/조회하기 (0) | 2021.07.20 |
[C#/OUTLOOK] MAPIFolder 인터페이스 : GetStorage 메소드를 사용해 폴더 사용자 속성 값 제거하기 (0) | 2021.07.19 |
[C#/OUTLOOK] MAPIFolder 인터페이스 : GetStorage 메소드를 사용해 폴더 사용자 속성 값 구하기 (0) | 2021.07.19 |
[C#/OUTLOOK] MAPIFolder 인터페이스 : GetStorage 메소드를 사용해 폴더 사용자 속성 값 추가하기 (0) | 2021.07.19 |
[C#/OUTLOOK] ExplorerEvents_10_Event 인터페이스 : FolderSwitch 이벤트 사용하기 (0) | 2021.07.15 |
[C#/OUTLOOK] Explorer 인터페이스 : Selection 속성 사용하기 (0) | 2021.07.08 |
[C#/OUTLOOK] Explorer 인터페이스 : Selection 속성을 사용해 선택 메일 항목 열거 가능형 구하기 (0) | 2021.07.08 |
[C#/OUTLOOK] 메일 컨텍스트 메뉴에서 커스텀 컨텍스트 메뉴 추가하기 (0) | 2021.07.05 |
[C#/OUTLOOK] 폴더 컨텍스트 메뉴에서 커스텀 컨텍스트 메뉴 추가하기 (기능 개선) (0) | 2021.07.05 |
[C#/OUTLOOK] 폴더 컨텍스트 메뉴에서 커스텀 컨텍스트 메뉴 추가하기 (0) | 2021.07.04 |
댓글을 달아 주세요