2012-07-19 19 views
2

我很好奇,如果有一種方法來攔截控件事件處理程序足夠長的時間來運行一小塊代碼,然後繼續處理該處理程序。例如,假設我的表單上有一個TreeView,並且當我點擊展開一個節點時,我想在它實際展開之前爲該節點運行一些代碼,也許某種按需加載的子節點,節點或類似的東西。如何延遲事件處理程序以首先運行一小段代碼?

現在我可以在NodeMouseClick事件的樹視圖中單擊時運行代碼,但是我希望節點在代碼完成之後才能展開。

想法?

回答

3

TreeView.BeforeExpand讓我們來做這個。另外,事件處理程序被阻塞 - 只有一個事件處理程序會同時運行,並且它們也會阻止GUI(如果您沒有明確採取任何措施來阻止它)。

+0

我不知道我是如何錯過的,但它正是我所期待的。謝謝! – Anthony 2012-07-19 16:34:54