Bar 停靠控件是 工具栏 的容器。 它们位于窗体或用户控件内部,并且容纳 bar 对象。 有两种类型的 bar 停靠控件: 常规 bar 停靠控件和独立的 bar 停靠控件。
常规 bar 停靠控件由 BarManager 自动维护,不需要人工创建。 它们被用于显示停靠在某个容器(窗体)的任一边缘的 bars。
独立的 bar 停靠控件用于在窗体内任意位置显示 bars, 需要人工创建和放置。
常规 Bar 停靠控件
仅当 bar 已经放置在停靠控件上时,停靠控件才可视。 在其他所有情况下,停靠控件的宽度都为零。 在把 bar 拖动到窗体的任一边缘时,相应的停靠控件接收并显示此 bar。 要为 bar 指定可能的停靠位置, 请参阅 Bar.CanDockStyle 属性。
下面的插图展示了一个在边缘停靠了 bars 的窗体。 Bars 位于相应的 bar 停靠控件内部。 底部的停靠控件不可视,因为它完全被状态栏占用了:不需要在应用程序中修改常规停靠控件的属性,除非你想为已停靠的 bars 提供背景设置。 BarManager 自动创建的停靠控件被命名为 barDockControl1 ... barDockControl4。 每个停靠控件都由 BarDockControl 类表示。 在设计时刻,可以在属性窗口中选中相应的对象来访问某个停靠控件。
另外,如果停靠控件可视,并且没有完全被 bars 叠盖,则单击它就可以在属性窗口选中它。
独立的 Bar 停靠控件
独立的 Bar 停靠控件允许 bars 被显示在窗体/用户控件内的任意位置,而不仅仅是停靠在窗体的边缘。 要执行此操作,则创建一个 StandaloneBarDockControl 对象,并添加 bars。 可以在设计时刻或运行时刻通过拖放操作来添加 bars。
与常规停靠控件类似,独立的停靠控件可以自由地被放置在窗体/用户控件中。 可使用它们的 Dock、Location 和 Size 属性来指定布局设置。 StandaloneBarDockControl.AutoSize 属性激活自动调整大小模式,当把 bars 添加到控件中或从控件中移除时,控件的大小被自动调整。
独立的 bar 停靠控件要求在窗体中有一个 BarManager。 如果在代码中创建 StandaloneBarDockControl 对象,则必须人工把它添加到 BarManager 的 BarManager.DockControls 集合中。
外观设置
下面的插图展示了指派到顶部停靠控件的自定义图像。 注意,应该使用透明的背景色来让背景图像可视。
下列代码展示了在运行时刻如何指定图像:
C# | 复制代码 |
---|---|
barDockControl1.Appearance.BackColor = Color.Transparent;
barDockControl1.Appearance.BackColor2 = Color.Transparent;
barDockControl1.Appearance.Image = Image.FromFile("C:\\image1.jpg");
|
Visual Basic | 复制代码 |
---|---|
barDockControl1.Appearance.BackColor = Color.Transparent
barDockControl1.Appearance.BackColor2 = Color.Transparent
barDockControl1.Appearance.Image = Image.FromFile("C:\image1.jpg")
|
要为窗体中的停靠控件提供同样的样式,可以不使用停靠控件的未初始化的 Appearance 属性,而是使用 BarAndDockingController 来为停靠控件提供默认的样式设置。 要达此目的,则使用 BarAndDockingController.AppearancesBar 对象的 BarManagerAppearances.Dock 属性。 Bar 和 Docking 控制器 小节中介绍了使用 BarAndDockingControllers 的要点。要获得更多关于 XtraBars 推出的样式模型信息,请参阅 外观和外观与感觉 主题。
如果没有完全被 bars 叠盖,则 Bar 停靠控件是可视的。 要让停靠控件可视,可能需要以半透明色绘制 bars。