DevExpress強大到難以想象,其很多組件、接口、自定義事件可完成較好的效果,可節省不少事。如下圖所示,用的兩個ChartControl、一個GridControl制作的平斷面示意圖,里面涉及不少知識點:高程斷面生成、懸鏈線的算法、轉角計算、方向圖的繪制、自定義標注等。
展示完成后,要打印輸出,每個控件都有打印和輸出的接口,怎么將其整體輸出呢?本想自己寫方法,卻誰知DevExpress已做好了這方面的工作,即使用PrintableComponentLink接口,示例代碼如下:
PrintableComponentLink link1 = new PrintableComponentLink(); PrintableComponentLink link2 = new PrintableComponentLink(); PrintableComponentLink link3 = new PrintableComponentLink(); CompositeLink compositeLink = new CompositeLink(new PrintingSystem()); link1.Component = this.chartControl1; link2.Component = this.chartControl2; link3.Component = this.gridControl1; compositeLink.Links.Add(link1); compositeLink.Links.Add(link2); compositeLink.Links.Add(link3); compositeLink.Landscape = true; compositeLink.ShowRibbonPreview(UserLookAndFeel.Default); //compositeLink.ExportToImage(fileName);