社区
Office开发/ VBA
帖子详情
求VSTO的开发高手帮助!
I_Love_IT!
2006-05-03 11:32:54
在ActionsPane里建立了四个Controls,想用其中一个Controls的按钮点击,来改变另一个Controls里面的一个Label的显示值.
请高手指示思路.有代码更佳.
...全文
216
2
打赏
收藏
求VSTO的开发高手帮助!
在ActionsPane里建立了四个Controls,想用其中一个Controls的按钮点击,来改变另一个Controls里面的一个Label的显示值. 请高手指示思路.有代码更佳.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
brbrm
2006-05-28
打赏
举报
回复
说明:正在编写一套《.NET Office高级编程》,Excel篇即将完成。但不太清楚市场前景如何。以下是一段关于Excel智能文档编程的节选,希望有所帮助:
6.3.1
新建一个Excel工作薄程序项目,在“解决方案资源管理器”中选中当前项目节点,通过菜单命令“项目 | 添加新项”打开“添加新项”对话框,在模板列表中选中“操作窗格控件”,接受默认名称“ActionsPaneControl1.cs”,单击“添加”按钮将其加入到项目中.
新建的这个ActionsPaneControl1是一个用户控件。除了没有标题栏外,它和Windows窗体非常类似,可以向其中加入任何标准Windows窗体控件(而不是VSTO封装后的窗体控件)。这里从工具箱中向其添加两个Label控件和一个Button控件,
在使用VSTO创建的Excel工作薄程序项目中,Globals类所提供的ThisWorkbook对象具有一个ActionsPane属性,表示附加到工作薄文档的操作窗格。要在打开工作薄时显示ActionsPaneControl1,还需要将该控件的实例对象加入到ActionsPane的控件集合当中:
private void ThisWorkbook_Startup(object sender, System.EventArgs e)
{
ActionsPaneControl1 control1 = new ActionsPaneControl1();
this.ActionsPane.Controls.Add(control1);
}
编译运行程序,可以看到工作薄的ActionsPane对象及其中的控件已经显示在Excel界面右侧的“文档操作”视图当中了
切换到ActionsPaneControl1的设计视图,在属性窗体的事件页中为控件添加Load事件,通过下面的事件处理代码在Label控件中说明操作窗格及其控件的排列方向:
private void ActionsPaneControl1_Load(object sender, EventArgs e)
{
label1.Text = "方向:" + Globals.ThisWorkbook.ActionsPane.Orientation.ToString();
label2.Text = "位置:" + Globals.ThisWorkbook.ActionsPane.StackOrder.ToString();
}
而后通过“重新定位”按钮(button1)的单击事件来修改控件的排列方向:
private void button1_Click(object sender, EventArgs e)
{
ActionsPane pane1 = Globals.ThisWorkbook.ActionsPane;
if (pane1.Orientation == Orientation.Horizontal)
{
if (pane1.StackOrder == StackStyle.FromLeft)
pane1.StackOrder = StackStyle.FromRight;
else
pane1.StackOrder = StackStyle.FromLeft;
}
else
{
if (pane1.StackOrder == StackStyle.FromTop)
pane1.StackOrder = StackStyle.FromBottom;
else
pane1.StackOrder = StackStyle.FromTop;
}
label1.Text = "方向:" + Globals.ThisWorkbook.ActionsPane.Orientation.ToString();
label2.Text = "位置:" + Globals.ThisWorkbook.ActionsPane.StackOrder.ToString();
}
重新编译运行程序,可以在Excel界面中拖动“文档操作”视图来改变ActionsPane对象的排列方向,并通过单击“重新定位”按钮来改变其中控件的排列方向,看看窗格中的文本发生了什么改变。
alaclp
2006-05-26
打赏
举报
回复
刚开始学习这个东西,希望能够相互学习交流
qq10204315
vsto
程序
开发
小结
首先我想说的是,我这个文章并不是阐述什么新技术,但是对于一个
VSTO
开发
新手来讲一定是有
帮助
的。因为这个问题发了我一天多的时间。以下简述我的问题: 我先在自己的机器上装了VS2010和OFFICE2010.然后我在我机器上卸载VS2010和OFFICE2010。改装VS2008和OFFICE2003,但是不管样都创建不了EXCEL程序。 提示“外接程序之类的问题”,我在网上找解决方案: 1、
Excel催化剂开源第8波-
VSTO
开发
之异步调用方法
在
VSTO
开发
过程中,因其和普通的Winform
开发
有点差别,具体细节笔者也说不清楚,大概是
VSTO
的插件是寄生在Excel中,不属于独立的进程之类的,其异步方法调用时,未能如Winform那样直接用await async异步方法就结束,仍需要再作简单的处理。 使用场景 在Excel上直接使用异步方法,貌似有上述提及的问题,不像Winform程序那样,需要Excel上调出窗体,再从窗...
Excel催化剂开源第12波-
VSTO
开发
遍历功能区所有菜单按钮及自定义函数清单
在插件
开发
过程中,随着功能越来越多,用户找寻功能入口将变得越来越困难,在Excel催化剂 ,将采用遍历所有功能的方式,让用户可以轻松使用简单的查找功能找到想要功能所在位置,查找的范围有:功能按钮的显示名称、功能说明等。 按钮功能查找关键词文本来源 这个遍历功能区按钮属性,不确定在xml功能区中能否实现,在设计器功能区,因其已经被强类型为一个类对象,用反射技术...
Excel催化剂开源第22波-
VSTO
的
帮助
文档在哪里?
Excel催化剂开源第22波-
VSTO
的
帮助
文档在哪里? Excel催化剂 2019.01.12 14:10字数 2930阅读 55评论 0喜欢 0 编辑文章 对于专业程序猿来说,查找文档不是个什么难事,但
VSTO
开发
者,多数是VBA
开发
者转型过来的,VBA
开发
者一般都是比较业余(笔者也是业余的
开发
,很幸运得到一位专业程序猿师傅全程陪伴成长)。一些看似...
Excel催化剂开源第15波-
VSTO
开发
之DataTable数据导出至单元格区域
上篇提到如何从Excel界面上拿到用户的数据,另外反方向的怎样输出给用户数据,也是关键之处。
VSTO
最大的优势是,这双向的过程中,全程有用户的交互操作。 而一般IT型的程序,都是脱离用户的操作,只能让用户准备好数据,离开Excel,或生成数据,要重新打开某文件才能获取到数据结果。 在
VSTO
中,用户随时在Excel最强UI前端中生产数据,同时也在获得数据结果后,无缝地利用Exce...
Office开发/ VBA
5,139
社区成员
17,886
社区内容
发帖
与我相关
我的任务
Office开发/ VBA
其他开发语言 Office开发/ VBA
复制链接
扫一扫
分享
社区描述
其他开发语言 Office开发/ VBA
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章