DotNetBar for WinForms是一個擁有89個組件的用戶界面控件套包,用戶可以使用Visual Studio 2005-2015輕松地創建專業的用戶界面。十多年來DotNetBar幫助開發人員輕松地創建易用的專業Windows Forms (WinForms) 用戶界面。
點擊立即下載DotNetBar for WinForms
本文將會介紹DotNetBar for WinForms的圖表控件,因為本模塊內容較多,所以分為多部分介紹,本文將介紹第二部分圖表容器。
圖表容器
ChartContainer對象是ChartControl中所有容器類型圖表元素的基本容器對象。ChartContainer元素可以是ChartPanel或ChartXy元素。
以下是可用于所有ChartContainer元素(ChartPanel和ChartXy)的屬性列表。
-
Bounds-獲取整個容器區域的滾動調整后的矩形邊界。
-
ContentBounds –獲取圖表的內容區域的矩形邊界。對于ChartPanel,它包括整個顯示區域,但是對于ChartXy元素,它包括制圖區域,軸,圖例和標題。
-
FrameBounds –獲取圖表框架區域的矩形邊界。由于設置了邊距,內邊距和陰影,因此插入了該區域-并覆蓋了整個內容區域。
在下圖中,紅色矩形表示容器Bounds,藍色矩形表示FrameBounds,綠色矩形表示ContentBounds。
-
AutoSizeMode –獲取或設置用于調整容器大小的模式,可用的選項為無和填充。默認設置為無(表示不會自動調整大小)。 填充表示相對于所有其他設置的容器FillWeight,容器的大小將由分配為FillWeight的容器(請參見下面的FillWeight)確定。
-
ContainerVisualStyles –獲取或設置容器的視覺樣式。容器支持默認,MouseOver,Selected和MouseOverSelected的樣式。
-
EffectiveContainerStyle –獲取對容器有效(緩存,復合)樣式的引用。圖表元素樣式是從較高級別的定義樣式到較低的實例級別的樣式創建的。
換句話說,如果ChartContainer的ChartControl DefaultVisualStyle設置了背景樣式,則無論級別如何,它對于所有定義的ChartContainer都有效。但是,如果特定的ChartContainer的樣式重新定義了相同的屬性,它將覆蓋ChartControl(或更高級別)級別設置的DefaultVisualStyle。
不應更改有效的樣式屬性,因為重新創建復合樣式時,通過樣式進行的更改將丟失,這是其他樣式和程序更改所必需的。
-
EmptyText –獲取或設置在容器為空時顯示的文本。對于ChartPanel元素,這是在沒有可顯示的ChartContainer對象的情況下(即ChartContainer集合不包含Visible條目)。對于ChartXy元素,就是沒有針對圖表定義的可顯示ChartSeries時(即,ChartSeries集合不包含Visible條目)。
-
EnableEmptyTextMarkup –獲取或設置是否啟用EmptyText小型標記支持。
-
EnablePanning –獲取或設置容器是否可以平移(通過在內容區域中單擊并拖動來垂直/水平滾動)。默認值為 true。可以為任何/所有容器對象(包括每個ChartPanel,ChartXy和ChartLegend對象)啟用或禁用平移。
-
EnableSelection –指示是否可以使用鼠標選擇容器。ChartControl維護每個圖表容器的選擇狀態,但是除利用Selected / SelectedMouseOver樣式外,當前不將其用于其他任何用途。
-
FillWeight –獲取或設置一個值,當AutoSizeMode為Fill時,該值表示容器的寬度相對于其他填充模式容器的寬度(默認值為100)
-
HScrollBar –獲取對容器的水平滾動條的引用。根據容器的內容區域是否可以在給定的區域中完全顯示,可以顯示水平滾動條,也可以不顯示水平滾動條。控件中的每個滾動條都可以根據應用程序的需要進行樣式化。
-
HScrollBarHeight –獲取或設置水平滾動條的高度。默認高度為9,設置此高度是為了最大程度地減少顯示在屏幕上的面積,從而為圖表數據和信息的可視性提供更大的區域可以根據應用程序的需要將其設置為更大或更小。
-
HScrollOffset –獲取或設置水平滾動條的偏移量。此屬性可用于根據需要滾動容器的內容區域。
-
HScrollBarVisible –獲取或設置是否在需要時顯示水平滾動條(由于控件內容超出可用寬度)。默認值為true,但如果不需要水平滾動條,則可以將其設置為false。
-
IsSelected –獲取或設置是否選擇了容器。
-
圖例–獲取對容器的ChartLegend的引用可以為每個容器(ChartPanel和ChartXy)顯示一個圖例,也可以根據需要進行組合(父圖例可以選擇包含子圖例條目,例如,如果您有一個5×5的嵌套圖表矩陣,您不必有25個圖例,但可以選擇讓一個圖例控制所有25個子圖表)。
-
MatrixAlignEndColumn –獲取或設置容器內容的X偏移量是否與在同一ChartMatrix列中結束的其他容器對齊。當您在同一ChartControl中定義多個圖表時,將為定義的圖表分配一系列矩陣單元格(自動或直接由應用程序分配)。如果有多個圖表以矩陣的同一列結尾,則不能保證這些容器的右邊緣會對齊(由于標題,軸定義等)。如果希望它們對齊,則可以為每個需要對齊的容器將此屬性設置為true,并且內容區域邊緣將根據需要對齊。
在下面給出的示例中,每個圖表占用6個水平矩陣單元,由于為它們定義的圖表標題(默認情況下將它們設置為自動換行),因此開始和結束單元格的內容默認情況下未對齊。
第一張圖片的MatrixAlignStartColumns和MatrixAlignEndColumn屬性設置為false。
此圖像的MatrixAlignStartColumns和MatrixAlignEndColumn屬性設置為true。
-
MatrixAlignEndRow –獲取或設置容器內容的Y偏移量是否與在同一ChartMatrix行中結束的其他容器對齊。這與MatrixAlignEndColumn的原理相同。(請參見上面的MatrixAlignEndColumn)
-
MatrixAlignStartRow –獲取或設置容器的內容從Y軸偏移開始的位置是否與在同一ChartMatrix行中開始的其他容器對齊。這與MatrixAlignEndColumn的原理相同。(請參見上面的MatrixAlignEndColumn)
-
MatrixAlignStartColumn –獲取或設置容器的內容從X偏移開始的位置是否與在同一ChartMatrix列中開始的其他容器對齊。這與MatrixAlignEndColumn的原理相同。(請參見上面的MatrixAlignEndColumn)
-
MatrixAlignStartRow –獲取或設置容器的內容從Y軸偏移開始的位置是否與在同一ChartMatrix行中開始的其他容器對齊。這與MatrixAlignEndColumn的原理相同。(請參見上面的MatrixAlignEndColumn)
-
MatrixDisplayBounds –獲取或設置容器的矩陣顯示范圍(以矩陣的相對單位)。此屬性遵循“常規”矩形定義-以與長度和寬度相關的值開始的偏移量。因此,要將給定容器分配給單個矩陣單元(單元0,0),可以執行以下操作(請注意,在以下示例中,矩陣的大小必須至少為8×6):
chartXy.MatrixDisplayBounds = new Rectangle(0, 0, 1, 1);
要將容器設置為一定范圍的單元格(從0,0開始并包含單元格7、5),可以這樣做,如下所示:
chartXy.MatrixDisplayBounds = new Rectangle(0, 0, 8, 6);
-
MatrixDisplayOrder –獲取或設置容器在矩陣布局中的顯示順序(較高的值位于較低的值之上)。
在以下示例中,將大型背景圖的MatrixDisplayOrder設置為0,將較小背景圖的MatrixDisplayOrder設置為1。
-
MinContentSize –獲取或設置容器內容區域的最小大小。如果容器的大小設置為使容器的內容區域變得小于設置的MinContentSize,則將顯示相應的滾動條(如果啟用)。
-
ScrollBounds –獲取可滾動范圍。該值與ContentBounds相同,只是考慮了容器邊框。
-
ScrollBoundsEx –獲取擴展的Scrollable范圍。這是容器的擴展或實際內容區域(不僅僅是屏幕上的可見區域)。面積可以大于MinContentSize,但永遠不會小于。
-
ScrollBoundsOffset –獲取當前的水平和垂直偏移(請參見HScrollOffset和VScrollOffset)。
-
Titles–獲取或設置對容器標題集合的引用。每個容器(ChartPanel,ChartXy)可以為它定義任意數量的標題。它們可以位于頂部,底部,左側或右側,也可以對齊TopLeft,MiddleRight等)。它們可以完全樣式化,帶有邊框,背景,圖像和陰影(如果需要)。如果需要,可以將每個標題設置為自動換行,并且可以將每個標題設置為將換行的數量限制為給定數量。
-
VScrollBar –獲取對容器的垂直滾動條的引用。根據容器的內容區域是否可以在給定區域中完全顯示(請參見MinContentSize),可以顯示垂直滾動條,也可以不顯示垂直滾動條。控件中的每個滾動條都可以根據應用程序的需要進行樣式化。
-
VScrollBarHeight –獲取或設置垂直滾動條的寬度。默認寬度為9,設置此寬度是為了最大程度地減少顯示在屏幕上的區域,從而為可視化圖表數據和信息提供更大的區域。可以根據應用程序的需要將其設置為更大或更小。
-
VScrollOffset –獲取或設置垂直滾動條的偏移量。此屬性可用于根據需要滾動容器的內容區域。
-
VScrollBarVisible –獲取或設置是否在需要時顯示垂直滾動條(由于控件內容超出可用高度)。默認值為true,但如果不需要垂直滾動條,則可以設置為false。
以下是所有ChartContainer元素(ChartPanel和ChartXy)可用的方法的列表。
-
確保可見(bool center)
-
確保關聯的容器(或給定的容器項目)在屏幕上可見,并且可以選擇在顯示中居中(盡可能)。
-
GetElementAt(Point pt)
-
返回位于給定Point(在本地坐標中)的ChartVisualElement;如果Point不在容器內,則返回null。 請注意,在返回ChartVisualElement時,必須將其強制轉換為返回的實際圖表元素,以便訪問特定元素的屬性和方法。
例如:
ChartVisualElement item = GetElementAt(pt);
if (item is ChartXy)
{
ChartXy chart = (ChartXy) item;
chartXy.EnsureVisible(true);
}
返回與給定Point(在本地坐標中)關聯的ItemHitArea。
創建并返回關聯元素的重復副本。
-
CopyTo(ChartVisualElement復制)
將所有屬性和樣式定義從關聯的元素復制到給定的副本。
本文的內容就到這里,后期會繼續跟進教程,感興趣的朋友,可以持續關注本教程。
關注慧聚IT微信公眾號???,了解產品的最新動態及最新資訊。
標簽:
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: