IActiveViewEvents を使用したイベントの利用

private IActiveViewEvents_Event m_pActiveViewEvents;
 
private void toolStripMenuItem2_Click(object sender, EventArgs e)
{
    m_pActiveViewEvents = (IActiveViewEvents_Event)axMapControl1.ActiveView;
     
    //イベント ハンドラの登録
    m_pActiveViewEvents.ViewRefreshed += new IActiveViewEvents_ViewRefreshedEventHandler(myViewRefreshed);
 
    //イベント ハンドラの登録解除
    //m_pActiveViewEvents.ViewRefreshed -= new IActiveViewEvents_ViewRefreshedEventHandler(myViewRefreshed);
}
 
private void myViewRefreshed(IActiveView view,  esriViewDrawPhase phase,  object Data, IEnvelope envelope)
{
    //処理内容を記述
}
Private m_pActiveViewEvents As IActiveViewEvents_Event
 
Private Sub ToolStripMenuItem3_Click(sender As System.Object, e As System.EventArgs) Handles ToolStripMenuItem3.Click
 
    'オブジェクトのキャスト
    m_pActiveViewEvents = CType(axMapControl1.ActiveView, IActiveViewEvents_Event)
 
    'イベント ハンドラの登録
    AddHandler m_pActiveViewEvents.ViewRefreshed, AddressOf MyViewRefreshed
 
    'イベント ハンドラの解除
    'RemoveHandler m_pActiveViewEvents.ViewRefreshed, AddressOf MyViewRefreshed
 
End Sub
 
'イベント実行時の処理メソッド
Private Sub MyViewRefreshed(ByVal View As IActiveView, ByVal phase As esriViewDrawPhase, ByVal Data As Object, ByVal envelope As IEnvelope)
    '処理内容を記述
End Sub
  • URLをコピーしました!

この記事を書いた人

伊達と酔狂のGISエンジニア。GIS上級技術者、Esri認定インストラクター、CompTIA CTT+ Classroom Trainer、潜水士、PADIダイブマスター、四アマ。WordPress は 2.1 からのユーザーで歴だけは長い。
代表著書『"地図リテラシー入門―地図の正しい読み方・描き方がわかる
GIS を使った自己紹介はこちら。ESRIジャパン(株)所属、2021年度~2023年度まで青山学院大学非常勤講師も兼務。日本地図学会常任委員。発言は個人の見解です。