创建带标题控件
带标题控件 具有一个用于为控件添加标签的标题属性。标题属性既可以是简单的文本字符串,也可以是复杂的 Microsoft .NET Framework 对象。带标题控件还可显示内容或项目集合,具体取决于所使用的带标题控件的类型。例如,“TabControl”内的“TabItem”是一个带标题内容控件,而“ToolBar”和“MenuItem”均是带标题项目控件。
以下过程说明了如何在项目控件 (TabControl) 内创建带标题内容控件(TabItem 控件)。此过程也适用于 MSDN 上 HeaderedContentControl 类型(此链接可能指向英文页面)主题的“类型”下列出的其他带标题内容控件。带标题项目控件在 MSDN 上的 HeaderedItemsControl 类型(此链接可能指向英文页面)中列出。
说明: |
---|
Microsoft Silverlight 1.0 项目中不提供带标题控件。但是,可以分层显示包含“TextBlock”对象的“画布”版式面板,然后与 JavaScript 事件处理程序挂钩,以使这些项目根据用户所单击的选项卡而显示或消失。有关 JavaScript 的信息,请参阅 Silverlight 脚本编写和鼠标事件(此链接可能指向英文页面)。 |
说明: |
---|
安装有 service pack 1 的 Microsoft Expression Blend 2 并未随附 Silverlight 2 版本的带标题控件。不过,Microsoft Silverlight Tools for Visual Studio(此链接可能指向英文页面)中包含的 Silverlight 2 SDK 附带了包含“TabControl”等带标题控件的程序集。有关如何在项目中包含程序集的信息,请参阅通过添加引用来导入自定义控件。 |
创建带标题内容控件
在 Microsoft Expression Blend 左侧的“工具箱”中,单击“资源库” 按钮。在“控件”选项卡中,单击“系统控件”(如果尚未将其选中),然后从列表中选择“TabControl” 控件。
“TabControl”控件的图标将显示在“资源库”按钮上方,并且处于选中状态以便您可以向美工板上添加 TabControl。
提示: 最常用的用户界面 (UI) 元素(如“Button”控件)已显示在“资源库”按钮上方的下拉列表中,以便您可以快速添加这些元素。
若要向美工板上添加按钮,请双击“TabControl”控件的工具箱图标。默认情况下,“TabControl”包含两个“TabItem”对象。
按照默认大小和位置(左上角)在美工板上创建的 TabControl 对象
提示: 如果需要,可以向“TabControl”中添加其他“TabItem”对象。在“对象和时间线”下,双击“TabControl”对象以将其激活。在“工具箱”中,从“资源库”(选中“全部显示”复选框)中选择“TabItem”控件。双击“TabItem”控件的图标,将该控件作为子元素添加到“TabControl”中。
在美工板上,通过拖动右下角的调整大小图柄,增大选项卡控件。指针将变为双向箭头 以指示调整大小操作。使“TabControl”足够大,以便可以在顶部显示三个选项卡。
提示: 或者,可以在“属性”面板的“布局”类别中设置“Height”和“Width”属性,调整“TabControl”的大小。
若要命名某个“TabItem”对象,请在“对象和时间线”下选择该对象,然后在“属性”面板的“公共属性”类别中,为“Header”属性键入一个名称。例如,将第一个“TabItem”对象命名为“员工信息”。
提示: 或者,可以将其他控件(如“Image”控件)用作“TabItem”的标题。在“对象和时间线”下,展开“TabItem”对象,然后双击“Header”对象以将其激活。可以从“工具箱”或“文件”面板中添加“Image”控件。
若要向某个“TabItem”对象中添加内容,请在“对象和时间线”下双击该对象以将其激活。
在“工具箱”中,双击“StackPanel” 以将“StackPanel”添加到“TabItem”中。“TabItem”的内容属性将从默认的“Grid”对象变为“StackPanel”对象。
提示: 内容属性只能包含一个项目。将面板控件(如“StackPanel”或“Grid”)用作内容属性中的一个项目会非常有用,因为可以向该面板控件中添加多个项。
在“对象和时间线”下,双击“StackPanel”对象以将其激活。此时,可以根据需要向“TabItem”中添加任意多个元素。例如,可以从“工具箱”中添加“TextBlock”或“ListBox”控件。
添加到 TabControl 对象中的子对象
如果要为整个“TabControl”添加边框和标题,则可以使用另一个带标题内容控件“GroupBox”。在“对象和时间线”下激活“LayoutRoot”对象,从“资源库”中选择“GroupBox”控件,然后使用鼠标在美工板上绘制该控件,使其略大于“TabControl”。
若要使“TabControl”成为“GroupBox”的子元素,请在“对象和时间线”下将“TabControl”拖至“GroupBox”处。
将 TabControl 拖至 GroupBox 处
通过在“对象和时间线”下选择“GroupBox”,然后在“属性”面板的“公共属性”类别中更改“Header”属性,可以更改该对象的标题。
生成项目 (F5) 以查看所得到的应用程序。
说明: 有关包含对“ListBox”中选定的项目做出反应的代码的完整示例,请参阅 MSDN 上的 GroupBox 示例(此链接可能指向英文页面)。该示例代码包含在 Windows SDK .NET Framework 3.0 示例(此链接可能指向英文页面)中提供的“WPFSamples.exe”程序包中。