本演练演示了在 Microsoft Office Excel 工作表上使用单选按钮的基础知识,使用户能够快速切换选项。 在这种情况下,这些选项将更改图表的样式。
适用于: 本主题中的信息适用于 Excel 的文档级项目。 有关详细信息,请参阅 Office 应用程序和项目类型提供的功能。
若要查看结果作为已完成的示例,请参阅 Office 开发示例和演练中的 Excel 控件示例。
本演练阐释了以下任务:
向工作表添加一组单选按钮。
选择选项时更改图表样式。
注释
以下说明中的某些 Visual Studio 用户界面元素在计算机上出现的名称或位置可能会不同。 这些元素取决于你所使用的 Visual Studio 版本和你所使用的设置。 有关详细信息,请参阅个性化设置 Visual Studio IDE。
先决条件
你需要满足以下条件才能完成本演练:
包含 Microsoft Office 开发人员工具的 Visual Studio 版本。 有关详细信息,请参阅 配置计算机以开发 Office 解决方案。
Excel 2013 或 Excel 2010 。
向工作表添加图表
可以创建自定义现有工作簿的 Excel 工作簿项目。 在本演练中,你将向工作簿添加图表,然后在新的 Excel 解决方案中使用此工作簿。 本演练中的数据源是名为 Data for Chart 的工作表。
添加数据
打开Microsoft Excel。
右键单击 Sheet3 选项卡,然后单击快捷菜单上的“ 重命名 ”。
将工作表重命名为图表数据。
将以下数据添加到 图表的数据 中,单元格 A4 是左上角,右下角为 E8。
区域/季度 Q1 Q2 第三季度 第四季度 西 500 550 550 600 东 600 625 675 700 北 450 470 490 510 南 800 750 775 790 接下来,将图表添加到第一个工作表以显示数据。
在 Excel 中添加图表
在“ 插入 ”选项卡上的“ 图表 ”组中,单击“ 列”,然后单击“ 所有图表类型”。
在 “插入图表 ”对话框中,单击“ 确定”。
在 “设计 ”选项卡上的 “数据 ”组中,单击“ 选择数据”。
在 “选择数据源 ”对话框中,单击 “图表数据范围 ”框并清除任何默认选择。
在 “图表数据” 工作表中,选择包含数字的单元格块,包括左上角的 A4 到右下角的 E8。
在 “选择数据源 ”对话框中,单击“ 确定”。
重新定位图表,使右上角与单元格 E2 对齐。
将文件保存到驱动器 C 并将其命名 为ExcelChart.xlsx。
退出 Excel。
创建新项目
在此步骤中,将基于 ExcelChart 工作簿创建 Excel 工作簿项目。
创建新项目
创建名为 “我的 Excel 图表”的 Excel 工作簿项目。 在向导中,选择“ 复制现有文档”。
有关详细信息,请参阅 如何:在 Visual Studio 中创建 Office 项目。
单击“ 浏览 ”按钮并浏览到本演练前面创建的工作簿。
单击 “确定” 。
Visual Studio 将在设计器中打开新的 Excel 工作簿,并将 “我的 Excel 图表 ”项目添加到 解决方案资源管理器。
设置图表的属性
创建新的使用现有工作簿的 Excel 工作簿项目时,将自动为工作簿中的所有命名区域、列表对象和图表创建主机控件。 可以使用Chart窗口更改控件的名称。
更改图表控件的名称
选择 Chart 设计器中的控件,并在 “属性 ”窗口中更改以下属性。
资产 价值 名称 dataChart HasLegend 假
添加控件
此工作表通过单选按钮为用户提供快速更改图表样式的方式。 但是,单选按钮需要独占 -- 选择一个按钮时,无法同时选择组中的任何其他按钮。 在将多个单选按钮添加到工作表时,此行为不会默认发生。
添加此行为的一种方法是将用户控件上的单选按钮分组,在用户控件后面编写代码,然后将用户控件添加到工作表。
添加用户控件
在解决方案资源管理器中选择“我的 Excel 图表”项目。
在 “项目 ”菜单上,单击“ 添加新项”。
在“ 添加新项 ”对话框中,单击“ 用户控件”,将控件命名为 ChartOptions, 然后单击“ 添加”。
向用户控件添加单选按钮
如果用户控件在设计器中不可见,请在解决方案资源管理器中双击 ChartOptions。
从工具箱的“常用控件”选项卡中,将单选按钮控件拖动到用户控件,并更改以下属性。
资产 价值 名称 columnChart 文字 柱形图 将第二个单选按钮添加到用户控件,并更改以下属性。
资产 价值 名称 barChart 文字 条形图 将第三个单选按钮添加到用户控件,并更改以下属性。
资产 价值 名称 lineChart 文字 折线图 将第四个单选按钮添加到用户控件,并更改以下属性。
资产 价值 名称 areaBlockChart 文字 面积块图 接下来,编写代码以在单击单选按钮时更新图表。
选择单选按钮时更改图表样式
现在,可以添加代码来更改图表样式。 为此,请在用户控件上创建一个公共事件,添加一个属性来设置选择类型,并为每个单选按钮的事件创建事件处理程序 CheckedChanged 。
在用户控件上创建事件和属性
在 解决方案资源管理器中,右键单击用户控件,然后单击“ 查看代码”。
将代码添加到
ChartOptions类以创建SelectionChanged事件和Selection属性。public event EventHandler SelectionChanged; private Microsoft.Office.Interop.Excel.XlChartType selectedType = Microsoft.Office.Interop.Excel.XlChartType.xlColumnClustered; public Microsoft.Office.Interop.Excel.XlChartType Selection { get { return this.selectedType; } set { this.selectedType = value; } }
处理单选按钮的 CheckedChanged 事件
在单选按钮的
CheckedChanged事件处理程序中areaBlockChart设置图表类型,然后引发事件。在
barChart单选按钮的CheckedChanged事件处理程序中设置图表类型。在
columnChart单选按钮的事件处理程序CheckedChanged中设置图表类型。在
lineChart单选按钮的CheckedChanged事件处理程序中设置图表类型。在 C# 中,必须为单选按钮添加事件处理器。 可以将代码添加到
ChartOptions构造函数中,放在调用InitializeComponent之后。 有关如何创建事件处理程序的信息,请参阅 如何:在 Office 项目中创建事件处理程序。public ChartOptions() { InitializeComponent(); areaBlockChart.CheckedChanged += new EventHandler(areaBlockChart_CheckedChanged); barChart.CheckedChanged += new EventHandler(barChart_CheckedChanged); columnChart.CheckedChanged += new EventHandler(columnChart_CheckedChanged); lineChart.CheckedChanged += new EventHandler(lineChart_CheckedChanged); }
将用户控件添加到工作表
生成解决方案时,新用户控件会自动添加到 工具箱中。 然后,可以将控件从 工具箱 拖动到工作表。
在你的工作表中添加用户控件
在“ 生成 ”菜单上,单击“ 生成解决方案”。
ChartOptions 用户控件将添加到工具箱中。
在 解决方案资源管理器中,右键单击 Sheet1.vb 或 Sheet1.cs,然后单击“ 视图设计器”。
将 ChartOptions 控件从 工具箱 拖到工作表。
名为
my_Excel_Chart_ChartOptions1的新控件将添加到项目中。将控件的名称更改为 ChartOptions1。
更改图表类型
若要更改图表类型,请创建一个事件处理程序,该事件处理程序根据用户控件中选择的选项设置样式。
更改工作表中显示的图表类型
将以下事件处理程序添加到
Sheet1类。在 C# 中,必须将用户控件的事件处理程序添加到特定事件 Startup,如下所示。 有关如何创建事件处理程序的信息,请参阅 如何:在 Office 项目中创建事件处理程序。
this.ChartOptions1.SelectionChanged += new EventHandler(ChartOptions1_SelectionChanged);
测试应用程序
现在,您可以测试工作簿,来验证选择单选按钮时图表的样式是否正确。
测试工作簿
按 F5 运行项目。
选择不同的单选按钮。
确认图表样式更改以匹配所选内容。
后续步骤
本指南演示了在工作表中使用单选按钮和图表样式的基本知识。 下面是一些可能接下来执行的任务:
部署项目。 有关详细信息,请参阅 部署 Office 解决方案。
使用按钮填充文本框。 有关详细信息,请参阅 演练:使用按钮在工作表中的文本框中显示文本。
使用复选框更改工作表的格式。