Page tree
Skip to end of metadata
Go to start of metadata

为了在设计时使用SideCaption属性以便在命令的旁边显示侧标题,需完成以下步骤:

  1. 从属性下拉列表中选择C1CommandMenu。
  2. 找到并展开C1CommandMenu.SideCaption节点。
  3. 选择BarGradientBegin属性并从Web颜色分类标签中选择DodgerBlue颜色。
  4. 选择BarGradientEnd属性并从Web颜色分类标签中选择PowderBlue颜色。
  5. 设置Text属性为Physics 101。
  6. 侧标题将出现在菜单项的左侧。以下图片演示了侧标题的外观:


注意:注意:显示在在侧标题文本表示参加郊游的班级的名称。

为命令对象创建一个独立的单击事件
为了指定一个和ClickEventHandler委托具有相同签名的方法的地址至C1Command的Click事件,使用AddHandler方法。为此,使用下面的代码:
Visual Basic

Visual Basic

Dim ch As C1CommandHolder = C1CommandHolder.CreateCommandHolder(Me)
'创建文件操作的命令。
Dim cNew as C1Command = ch.CreateCommand() '使用AddHandler方法指定一个Click事件的委托。
AddHandler cNew.Click, New ClickEventHandler(AddressOf cNew_Click)

C#

C#

C1CommandHolder ch = C1CommandHolder.CreateCommandHolder(this);
//创建文件操作的命令。
C1Command cNew = ch.CreateCommand();
//使用AddHandler方法指定一个Click事件的委托。
cNew.Click += new C1.Win.C1Command.ClickEventHandler(cNew Click);

创建一个MDI窗体的窗体列表
C1Command具有一个C1CommandMdiList的命令类型,用作为一个MDI(多文档接口)的窗体创建一个窗体列表。一个窗体列表在追踪一个应用程序已经打开的不同MDI子窗体时非常有用。为创建一个MDI窗体的窗体列表,需完成以下步骤:

  1. 在属性窗口中,设置 Form1.IsMDIContainer属性为True。
  2. 在解决方案资源管理器中,右击该项目并选择Add|Add New Item。
  3. 从对话框中,选择Windows窗体,命名该窗体为MdiChild,然后将其Text属性设置为MdiChild。
  4. 添加C1MainMenu组件至您的MDI父窗体,Form1。
  5. 在属性窗体中,设置C1MainMenu的Name属性为C1MainMenu1。
  6. 创建File菜单。通过Link to Command设计器向C1MainMenu添加一个C1CommandMenu组件以及一个子菜单项。设置以下属性:

    Command Name

    Command Type

    Command Text

    cmdFile

    C1CommandMenu

    &File

    cmdFileNew

    C1Command

    &New

  7. 创建Window菜单存储的MDI子窗口。在Link to Command设计器中,添加另一个C1CommandMenu至 C1MainMenu组件,并向其添加一个C1CommandMdiList类型的子菜单项。

设置以下属性:

Command Name

Command Type

Command Text

cmdWindow

C1CommandMenu

&Window

c1CommandMdiList1

C1CommandMdiList

<MDI Windows List>

  1. 创建一个程序用来将MdiChild窗体的新实例显示为Form1的MDI Children。

Visual Basic

Visual Basic

Private Sub createNewMdiChild() Dim mc As New MdiChild() mc.MdiParent = Me mc.Text = String.Format("MDI Child Window {0}", Me.MdiChildren.Length) mc.Show()
End Sub

C#

C#

private void createNewMdiChild() { MdiChild mc = new MdiChild(); mc.MdiParent = this; mc.Text = string.Format("MDI Child Window {0}", this.MdiChildren.Length); mc.Show();
}

  1. 在设计视图中,双击cmdFileNew菜单项以创建一个单击事件处理程序,并调用createNewMdiChild方法。将下面的代码添加到事件处理程序内:

Visual Basic

Visual Basic

createNewMdiChild()

C#

C#

CreateNewMdiChild();

  1. 按F5运行应用程序。
  2. 从"文件"菜单上,单击"新建"创建一个新的MDI子窗体。

C1CommandMdiList将扩展可用的MDI子窗体列表。

注意:注意:Window菜单始终显示在应用程序内打开的MDI子窗体列表,同时在具有焦点的MDI子窗体项目的旁边显示一个复选标记。


删除菜单项
当一个菜单项高亮显示时,按下DEL键或者从右键菜单上选择删除,命令链接以及该命令链接指向的命令(简单命令或
菜单命令)将被删除,取决于当前哪一个被选中。(为确认当前被选中的项目,请查看Visual Studio 设计器的属性窗口。)
在设计时删除菜单项
为删除命令链接(这将会保留命令本身,之后您可以从另一个命令链接链接到此命令):

  1. 单击要删除的菜单项。确保属性窗体中显示的是命令链接属性而不是命令的属性。
  2. 右键单击此项目以打开上下文菜单,并选择删除,或者简单地按下DEL键。

删除命令本身(这将删除命令,但保留命令链接,您可以再次将其连接到另一个命令或菜单)

  1. 单击要删除的菜单项。然后再单击一次。这一动作将选择命令而不是命令链接。确保属性窗口中显示该命令的属性而不是命令链接的属性。
  2. 在项目的右键打开上下文菜单并选择删除,或者按DEL键。该命令将被删除,留下空白的命令链接。您可以通过右键单击并从上下文菜单选择编辑,重新将其链接到另一个命令。

编程方式删除一个菜单项
为了删除菜单,可以使用Dispose方法。使用下面的代码来删除菜单或菜单项:
Visual Basic

Visual Basic

'该菜单的变量名称叫做menu
'以下代码将删除此菜单
menu.Dispose()

'该菜单项的变量名称叫做 menuitem1
'以下代码将删除此菜单 item
menuitem1.Dispose()

C#

C#

//该菜单的变量名称叫做menu
//以下代码将删除此菜单
menu.Dispose();

//该菜单项的变量名称叫做 menuitem1
//以下代码将删除此菜单 item
menuitem1.Dispose();

在下拉菜单中显示分隔符在下拉菜单中显示一个分隔符,请完成以下步骤:

  1. 从现有的下拉菜单右键单击一个命令,并从其上下文菜单选择追加项目。
  2. 一个新的命令将出现。在新命令的Link to Command设计器中,在Name文本框中删除名称。在Text文本框中将名称改变为一个连字符。Text文本框以及Name文本框字段输入的值应当像下面的Link to Command设计器所示。

  1. 选择确定,之后您的命令链接就会显示为一个条分隔符,如下面所示。


在菜单和工具栏显示工具提示
本主题通过创建自己的菜单和工具栏提示演示如何进行自定义工具提示。菜单和工具栏均具有叫做ToolTipText的属性,该属性提供给用户当鼠标悬停在菜单或工具栏上方时,显示工具提示的能力。

为菜单项显示工具提示

  1. 右键点击在主菜单中的顶级菜单(C1CommandMenu)从上下文菜单选择属性。
  2. 从属性下拉列表选择C1CommandMenu1并展开Command节点。
  3. 设置ShowToolTips属性值为True,以启用当鼠标悬停在菜单上方时,出现文本提示的能力。
  4. 在窗体上,选中一个您希望显示工具提示的C1Command菜单项。设置
  5. ShowTextAsToolTip属性的值为False,因此当鼠标悬停在C1CommandMenu选中的菜单项上方时,命令的文本将不会被用作工具提示。
  6. 选中ToolTipText属性并在此文本框中输入您希望在鼠标悬停在菜单项上方时显示的文本内容。

保存并运行您的应用程序。以下显示的就是ToolTipText运行时的外观效果:

为工具栏按钮显示工具提示

  1. 从窗体上C1ToolBar控件选中一个工具栏按钮。
  2. C1ToolBar命令链接的属性将出现在右侧面板的属性工具栏上。查找C1CommandLinks属性并展开Command属性。
  3. 设置ShowTextAsToolTip属性的值为False。
  4. 选中ToolTipText属性并在此文本框中输入您希望在鼠标悬停在工具栏按钮上方时出现的工具提示的内容。
  5. 保存并运行您的应用程序。以下是工具栏按钮的工具提示文本的显示效果:

注意:注意:如果您将ShowTextAsToolTip保持为其默认值,True,那么当鼠标悬停在工具栏上方时,将显示工具栏按钮的文本内容,而不是工具提示的文本。同时,需要删除您可能输入的工具栏的ToolTipText属性的内容。工具栏看起来像下面的图片:

Outbar上为按钮显示工具提示

您可以按照上面所列举的相同的方式为显示在Outbar上的按钮显示工具提示。
隐藏较少使用的菜单项
隐藏长期未被使用的菜单项,使用C1CommandHolder对象上的RecentLinksThreshold属性来启用此功能。
为打开此功能,可以将此属性的值设置为一个0到100之间的值。一个好的起始值是50。
合并菜单项
为了将当前的菜单链接和来自于子窗体上菜单的链接合并,请使用MergeCommandLinks方法:
Visual Basic

Visual Basic

Me.c1CommandHolder1.MergeCommandLinks(Me.c1MainMenu1.CommandLinks,
Me.c1MainMenu1.CommandLinks,
_form2.c1MainMenu1.CommandLinks)

C#

C#

this.c1CommandHolder1.MergeCommandLinks(this.c1MainMenu1.CommandLinks, this.c1MainMenu1.CommandLinks, _form2.c1MainMenu1.CommandLinks);

修改菜单的外观
在设计时使用属性编辑器修改C1MainMenus的属性。
通过相关的属性自定义每一个菜单项,如下面的步骤所演示:

  1. 右键单击C1MainMenu控件。选择上下文菜单中的菜单属性

    注意:注意:你也可以在属性窗体中查看C1MainMenu的属性。

  2. 从属性下拉框选择C1MainMenu1并设置相关的Font属性:

Font=Verdana
FontSize=11pt

  1. 从属性下拉框选择C1MainMenu1并设置相关的属性:

BackColor = Select the Web tab and select Alice Blue.
BackHiColor= #66CCFF
ForeColor = Select the Web tab and select Navy. ForeHiColor = Black

  1. 构建并运行此Web应用程序。

该主题演示如下:

除非另有修改,菜单项默认从父菜单继承格式。 你可以根据需要修改个别项目。C1MainMenu 的外观如下图:

注意:注意:下图演示本主题中,不带有内容的C1MainMenu的外观。

设置图像/复选标记栏的宽度
为设置C1CommandMenu上的图像/复选标记栏的宽度,请使用ImageBarWidth属性。设置C1CommandMenu的
ImageBarWidth属性为一个大于零的值。
当没有安装任何MessageFilter时显示一个对话框窗体
C1Command的菜单和工具栏依靠安装一个消息过滤器(实现IMessageFilter 接口)以实现主菜单以及其他一些功能。在某些情况下(例如,当C1Command用于组件的设计器,并在VisualStudio设计时中运),安装的消息过滤器将不工作。在这种情况下,C1Command仍然可以使用。
下面的代码片段演示如何在当消息过滤器无法安装,显示一个对话框。你可以使用这个方法,比如说,您希望在组件的设计器中显示一个对话框。
Visual Basic

Visual Basic

Imports C1.Win.C1Command;
C1CommandHolder.UninstallMessageFilter()
'创建 C1CommandMsgHook
Dim hook As New C1CommandMsgHook() hook.Install() Try
result = dialog.ShowDialog() Finally
Hook.Uninstall();
End Try

C#

C#

using C1.Win.C1Command; ...
C1CommandHolder.UninstallMessageFilter(); C1CommandMsgHook hook = new C1CommandMsgHook(); hook.Install(); try { result = dialog.ShowDialog(); } finally { hook.Uninstall();
}

在菜单末尾对项目换行
为了在菜单末尾对项目进行折行,请使用C1MainMenu的Wrap属性。
如果为True(默认值),当窗体宽度不足时,菜单将折行显示。如果为False,菜单不折行,替代方案是在末尾添加一个扩展菜单。
工具条任务
此章节介绍怎么执行特定的工具条任务。
在工具栏中添加任意控件

按以下步骤在工具条中添加任意控件:

  1. 在窗体上添加C1CommandDock控件。
  2. 拖动一个C1ToolBar控件到C1CommandDock控件内。
  3. 右键点击窗体上的C1ToolBar控件。在上下文菜单中选择Edit。弹出Link to Command编辑器。在Link to

Command编辑器中按如下设置:
Text文本框设置为Find Text:
Name设置为c1CommandControl1
Command Type设置为C1CommandControl 点击编辑器对话框中的确认按钮。

  1. 在创建新命令列表框中选择C1CommandControl。
  2. 在Properties下拉列表中选择c1CommandLink1,然后设置ButtonLook属性值为Text。这个工具条按钮显示为文本样式。
  3. 在工具箱中选择Windows Form标签,拖动一个ComboBox控件到C1ToolBar控件的右侧。组合框显示如下图所示:

  1. 在Properties下拉列表中选择c1CommandControl1,然后选中Control属性,在属性值的下拉列表中选择

comboBox1。

  1. 编译运行程序。运行时工具条显示如下图所示:


在工具条中加入图片
此主题假定你已经创建了一个工具条按钮。下列步骤演示了如何添加一个图片到工具条按钮中:

  1. 在源文件中定位到需要加入图片的位置。
  2. 键入下列代码来添加一个图片到你的工具条按钮中。

Visual Basic

Visual Basic

cNew.Image = System.Drawing.Image.FromFile("C:\bitmap\New.bmp")

C#

C#

cNew.Image = System.Drawing.Image.FromFile("C:\\bitmap
New.bmp");

在按钮中插入分隔符步骤如下:

  1. 右键点击第二个工具条按钮,然后在上下文菜单中选择Properties。
  2. 在外观属性类别中设置Delimiter属性值为True。
  3. 保存运行程序。按钮分隔符显示如下图所示:


将水平工具条的位置调整为垂直
按以下步骤使用Horizontal属性将工具条位置从水平改变为垂直。

  1. 创建一个工具条。
  2. 使用如下代码使工具条显示为垂直:

Visual Basic

Visual Basic

toolbar.Horizontal = False

C#

C#

toolbar.Horizontal = False;

创建工具条
你可以在设计时或者通过代码来创建一个工具条。点击下列任何一个链接以展开通过设计器或者代码方式的步骤。
在设计时创建一个工具条
按如下步骤使用Link to Command编辑器创建一个C1ToolBar。

  1. 在窗体中加入一个C1ToolBar控件,然后右键点击C1ToolBar控件并且从上下文菜单中选择Edit。弹出被选择工具条的Link to Command编辑器。
  2. 在Text文本框中输入File,然后点击OK按钮。
  3. 在Properties下拉框中选择c1CommandLink1。设置这个File工具条按钮对应的CommandLink的ButtonLook属性值为Text。这个File工具条按钮以文本方式显示。
  4. 右键点击C1ToolBar控件并且在上下文菜单中选择Append Item。将在当前的CommandLink后添加一个新的命令连接。弹出Link to Command编辑器。
  5. 在Text文本框中输入Edit,然后点击OK按钮。
  6. 在Properties下拉列表中选择c1CommandLink2。设置这个Edit工具条按钮对应的CommandLink的ButtonLook属性值为Text。
  7. 右键点击Edit工具条按钮然后在上下文菜单中选择Insert Item。将在其后添加一个新的命令连接。弹出Link to

Command编辑器。

  1. 在Properties下拉列表中选择c1CommandLink3。设置这个View工具条按钮对应的CommandLink的ButtonLook属性值为Text。
  2. 编译运行程序。

Visual Basic在运行时,工具条显示如下图所示:

以编程方式的创建工具条
按以下步骤以编程方式创建一个包含文本按钮的C1ToolBar:

  1. 添加C1.Win.C1Command引用到项目中。
  2. 在代码中申明命名空间,然后添加一个用来容纳工具条的C1CommandHolder。

Visual Basic

Visual Basic

Imports C1.Win.C1Command
Dim ch As C1CommandHolder = C1CommandHolder.CreateCommandHolder(Me)

C#

C#

using C1.Win.C1Command; C1CommandHolder ch = C1CommandHolder.CreateCommandHolder(this);

  1. 创建一个新的C1ToolBar,然后将它添加到窗体中。

    Visual Basic

    Dim tb As New C1ToolBar()
    Me.Controls.Add(tb)

    C#

    C#

    C1ToolBar tb = new C1ToolBar(); this.Controls.Add(tb);

  2. 将C1CommandHolder分派给C1ToolBar,然后创建一个新的工具条命令。新添加的命令的名字设置为File。

Visual Basic

Visual Basic

tb.CommandHolder = ch Dim cFile As New C1Command() cFile.Text = "File"

C# C#

C#

tb.CommandHolder = ch; C1Command cFile = new C1Command(); cFile.Text = "File";

  1. 为新命令创建一个新的CommandLink,然后将新CommandLink加入到工具条中。

Visual Basic

Visual Basic

Dim cl As C1CommandLink cl = New C1CommandLink(cFile) tb.CommandLinks.Add(cl)

C#

C#

C1CommandLink cl = new C1CommandLink(cFile); tb.CommandLinks.Add(cl);

  1. 让这个CommandLink显示为文本样式,然后创建另外一个名字为View的命令。

Visual Basic

Visual Basic

cl.ButtonLook = ButtonLookFlags.Text Dim cView As New C1Command() cView.Text = "View"

C#

cl.ButtonLook = ButtonLookFlags.Text; C1Command cView = new C1Command(); cView.Text = "View";

  1. 为新的View命令创建一个新的CommandLink,然后将它加入到工具条中。

Visual Basic

Visual Basic

cl = New C1CommandLink(cView) tb.CommandLinks.Add(cl)

C#

C#

cl = new C1CommandLink(cView); tb.CommandLinks.Add(cl);

  1. 让这个View CommandLink显示为文本样式,然后创建另外一个名字为Edit的命令。

Visual Basic Visual Basic

Visual Basic

cl.ButtonLook = ButtonLookFlags.Text Dim mEdit As New C1Command() mEdit.Text = "Edit"

C#

C#

cl.ButtonLook = ButtonLookFlags.Text; C1Command mEdit = new C1Command(); mEdit.Text = "Edit";

  1. 为新的Edit命令创建一个新的CommandLink,然后将它添加到工具条中。

Visual Basic

Visual Basic

cl = New C1CommandLink(mEdit) tb.CommandLinks.Add(cl)

C#

C#

cl = new C1CommandLink(mEdit); tb.CommandLinks.Add(cl);

  1. 让Edit CommandLink显示为文本样式。

Visual Basic

cl.ButtonLook = ButtonLookFlags.Text

C#

C#

cl.ButtonLook = ButtonLookFlags.Text;

  1. 保存后运行程序。

工具条显示如下图所示:

以编程的方式停靠一个工具条
按以下步骤以使用C1CommandDock让C1ToolBar可停靠:

注:注:此主题假定你已使用代码创建了一个C1ToolBar。

    1. 创建一个新的C1CommandDock并且赋值给dock变量。

Visual Basic

Visual Basic

Dim dock As New C1CommandDock()

C#

C#

C1CommandDock dock = new C1ComandDock();

    1. C1CommandDock控件添加到窗体中。

Visual Basic

Visual Basic

Me.Controls.Add(dock)

C#

C#

this.Controls.Add(dock);

增加工具条中图片的尺寸
为了显示更大的图标或位图,需要增加工具条按钮的尺寸。这将相应的增加图片的尺寸。可以使用工具条的
MinButtonSize属性来实现。MinButtonSize属性的默认尺寸是24 pixels。
按如下步骤在设计时增加工具条按钮的尺寸:
打开C1Toolbar任务菜单,在C1ToolBar的MinButtonSize文本框中输入50 pixels。
或者
在属性窗口中设置C1ToolBar.MinButtonSize属性值为40 pixels。
下面图片中工具条的最小按钮尺寸被增加到40像素。

调整工具条的外观
通过以下步骤更改toolbar外观:

  1. 在Properties下拉列表中选择C1ToolBar。
  2. 展开C1ToolBar对象的Font属性。设置下列字体属性:

Font.Name = Arial
Font.Size = 9

  1. 设置下列C1ToolBar属性:

BackColor = #0066CC
BackHiColor = Pale Turquoise
ForeColor = White
ForeHicolor = #003399

  1. 展开C1ToolBar的Border属性。设置下列边框属性:

Border.Light Color = Pale Turquoise
Border.Style = Outset Border.Width = 3
在运行时工具条显示如下图所示:

让工具条按钮中的图片更明亮
SmoothImages属性值默认为True,非选择状态的图片以平滑的方式显示。如果设置这个属性值为False,非选择状态的图片以更明亮的方式显示。
如下表格说明了SmoothImages属性设置为True和False时不同的显示效果:

属性

工具条图片

False

True

指定一个停靠/浮动位置
此主题演示了如何使用代码设置C1CommandDock的位置。
使用如下代码将工具条停靠在上方。
Visual Basic

Visual Basic

dock.Dock = DockStyle.Top

C#

C#

dock.Dock = DockStyle.Top;

注:注:如果想让工具条停靠在下方,左方或者右方,改变枚举值Top为相应的位置:Bottom,Left或者Right。

打开自定义功能
设置CustomizeButton属性值为True可以打开自定义功能,允许用户在运行时自定义工具条。参照动态自定义工具条获取这个功能的更多信息。

  • No labels