Revit二次開發 非模態視窗

2021-08-17 22:52:57 字數 985 閱讀 6560

非模態視窗有乙個好處,就是可以一直停留在程式之前,然後持續完成操作。但是在revit二次開發中,非模態視窗也有幾個注意事項。

1、需要在文件關閉的時候,把非模態視窗也關閉掉,不然會導致文件關閉,視窗還在這樣奇怪的bug。

2、非模態的視窗的事件需要在iexternalcommand裡註冊。

3、每個操作必須在外部事件裡進行。

以下**關注後兩個注意事項,第乙個用上document事件即可解決。

首先在iexternalcommand註冊事件。

public class command : iexternalcommand

catch (exception e)

}}

然後寫乙個通用的外部事件。

public class executeeventhandler : iexternaleventhandler

public executeeventhandler(string name)

catch}}

public string getname()

}

接下來,通過控制項來實現建立構件。

public partial class modelessview : window

private void creatline_click(object sender, routedeventargs e)

});_externalevent.raise();} }

private void creatline2_click(object sender, routedeventargs e)

});_externalevent.raise();}}

}

這就是乙個簡單的非模態視窗實現的辦法。

對revit二次開發和dyanmo程式設計這塊感興趣**qq**流:660319009

Revit二次開發 初學

前言 由於工作需要,近期開始學習revit二次開發知識。學習的同時將學習過程與小夥伴們一起分享,希望後來的小夥伴在看到我的學習筆記的時候有所幫助。說明由於revit的版本在不斷更新中,所以我在學習revit的時候選擇了從revit自帶的幫助檔案開始學習,不同版本的revit,就看相應的help檔案。...

Revit二次開發 Revit擴充套件儲存資料

revit二次開發過程中,需要將相關資訊儲存到rvt檔案中,再次開啟rvt的時候,可以通過讀取這些資訊,知道當前構件的基本狀態,或者將乙個特殊的資訊儲存到rvt檔案中,從revit2012開始引入了擴充套件儲存這個新技術,就是可以把一些資料儲存在revit中的某乙個物件上。且這個儲存操作,只能通過程...

Revit二次開發 分割族

如有不明白,請qq254033230詢問。其實在revit裡是不存在分割族的概念。對於基於線形的族,截面沿線都是一樣,要想達到分割的狀態,只需要把族基於線的那條線變短,然後再在分割點複製乙個新的族即可。過程是先獲得線的均分點,然後把族的線縮短,接著再複製族,即可變成均分的效果。主要方法見 priva...