尚未對內容進行刪減,內容有偏差和冗余,謹慎閱讀。
發現在后面,寫在前面:
13,之前在Default模式下,之所以很多Appearance屬性都起不到作用,是因為Control的LookAndFeel默認選擇了UseDefultLookAndFeel.
14,最早在接觸該控件的時候,找了很久上調下拉的按鈕是怎么出來的,可以設置Control的SkinExplorerBarViewScrollStyle為Button或者是Scroll,即按鈕還是滾動條。
一、Control
1,NavBarControl即導航條控件,位於導航和布局分類中,可以用來實現類似於網頁中左導航的功能。其基本元素為NavBargroup控件,即導航條分組,如圖:
2,通過點擊快速編輯按鈕,進入快速便捷界面,可以添加分組(Add Group),修改停靠屬性(Dock Style),修改控件的基本布局風格(Paint Style)。停靠屬性與WinForm中所有其他控件一致,修改在父容器中的停靠模式。PaintStyle中包括Default/ExplorerBar/SideBar/NavigationPane四種模式,如下圖分別是D模式和S模式,其中D/E模式類似,S/V模式類似。
3,打開Run Designer就是對導航控件進行細致的屬性配置。
其中Groups/Items/Links顯然是對詳細條目進行具體設置,如導航分類1/導航分類2等等,如圖:
View Chooser是選擇默認試圖,其中PreView預覽版:
設置控件的View屬性會覆蓋掉之前選擇的PaintStyle。
4,看其他人的演示程序,怎么都不出現BarControl上調和下拉的按鈕,后來發現當添加的Items足夠多時,自然就出現了,之前一直糾結在這,是因為把按鈕看成多余的樣式了。
插入:UseWaitCursor屬性,當鼠標進入Control的活動區域的時候,顯示Wait符號。
二、Group
5,NavBarGroup同樣進入快速編輯界面
可以修改標題,注意在Dev中多數控件用Caption屬性替代了原有的Text屬性。
通過SuperTip屬性來修改提示信息,就像所描述的那樣,真的很強大。
修改GroupStyle,選擇ControlContainer,即可將任意控件添加到該分組中。
選中Expanded復選框,則該分組在運行時默認打開。否則默認收縮。
6,Group中Item的Image部分,選擇SmallImage或者LargeImage來添加圖片,而究竟是以Small的方式還是以Large的方式進行顯示,取決於Group中GroupStyle,如果GroupStyle為LargeIconText,那么就如圖所示:
相反,如果Group中選擇SmallIconText,但是只指定了LargeImage,那么對不起,將不顯示任何圖標。
插入:對於界面中共有的控件位於Components分類中,如ImageCollection。
為了實現上面的效果,我們可以為NavBarControl控件添加SmallImages和LargeImages,也就是為這兩個屬性分別指定ImageCollection。這樣指定SmallImageIndex屬性就可以了,當然如果已經指定了smallImage,那么會覆蓋ImageCollection中指定的圖片。
7,在同一時刻只能有一個Group的Expanded屬性為true;
8,在Default模式下,Group的appearance屬性中的BackColor和BackColor2以及BorderColor屬性失效,但是在SideBar模式下卻是有用的,但是在SideBar模式下,圖標將會不予顯示,所以我們推斷,圖標和顏色背景在默認情況下不能共存,也就是相互覆蓋。
Font屬性設置Group中字體的大小同時影響Group的高度。
FontSizeDelta會影響到Group顯示字體的大小,FontStyleDelta會影響到字體的風格,如加粗/斜體等。ForeColor代表字體顏色;
GradientMode代表顏色漸變的方式,如垂直/水平等。
Image是設置背景圖片。當然是只在SideBar模式下有效。
也就是說,只有SideBar模式,才允許這么多的自定義,在其他模式下,會直接被覆蓋掉。其實這些屬性在切換模式時,都會被保留,只不過是存在相互之間的覆蓋罷了。
Options中的其他屬性,如設置UseImage等就不做展開了。
9,同理AppearanceBackground的部分屬性也只是在SideBar中有效。只是Group整體的背景,而不是Group條的設置。
沒有展開的必要。用處也不大。
10,AppearanceHotTrack只是當鼠標進入Group控件后,控件的反映,還是有些用處的。
11,DragDropFlags設置Group內的Items之間是否可拖動。
Hint屬性設置提示文本,是SuperTip的微縮版本。
Visible指示可見性,其他屬性不做說明。
三、item
12,因為有Control和Group的積累,所以item的快速編輯界面就不用說明了,注意Enabled屬性就可以了,指示當前的控件能否被選中。有關的Appearance的屬性也不做說明。
注意CanDrag屬性,與Group中的Drag有影響,即使設置Group可以拖拽,我們仍然可以通過設置某個Item不可以被拖動。