找回密码
 立即注册

QQ登录

只需一步,快速开始

taxsoft

中级会员

76

主题

246

帖子

608

积分

中级会员

积分
608

活字格认证微信认证勋章元老葡萄

taxsoft
中级会员   /  发表于:2012-5-11 15:28  /   查看:5354  /  回复:9
请问如何在Spread控件上加上设计时菜单,调用自己的spread设计器,编辑并返回。
能否给出示例?

9 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-11 15:47:00
沙发
你是想实现这样的功能吗:在Form上面放置一个Spread控件,然后Spread有一个右键菜单,通过右键菜单打开Spread设计器,在设计器中编辑,然后将修改结果返回给Form上的Spread中。

不知我的理解是否正确,如和你表达的意思有不同指出,请指出。
回复 使用道具 举报
taxsoft
中级会员   /  发表于:2012-5-11 15:50:00
板凳
原帖由 dof 于 2012-5-11 15:47:00 发表
你是想实现这样的功能吗:在Form上面放置一个Spread控件,然后Spread有一个右键菜单,通过右键菜单打开Spread设计器,在设计器中编辑,然后将修改结果返回给Form上的Spread中。

不知我的理解是否正确,如和你表达的意思有不同指出,请指出。


对的,但是这个设计器不是默认设计器,而是自己做的设计器(做DEMO的话,用一个值包含SPREAD的单窗体应用程序即可)

在SPREAD设计时菜单增加一个菜单项最好
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-11 15:59:00
地板
只需在右键菜单事件中调用以下代码就可以了:
  1.     FarPoint.Win.Spread.Design.FpSpreadDesigner designer = new FarPoint.Win.Spread.Design.FpSpreadDesigner();
  2.     designer.ShowDialog(this.fpSpread1);
复制代码

如果你是要在右键菜单中打开自己的设计器,方法应该类似,也需要将 Form 中的Spread传递给自定义的设计器中
回复 使用道具 举报
taxsoft
中级会员   /  发表于:2012-5-11 16:11:00
5#
原帖由 dof 于 2012-5-11 15:59:00 发表
只需在右键菜单事件中调用以下代码就可以了:
[code]    FarPoint.Win.Spread.Design.FpSpreadDesigner designer = new FarPoint.Win.Spread.Design.FpSpreadDesigner();
    designer.ShowDialog(this.fpSpread1);
......


这个是“运行时”,我想要的是“设计时”呀。
过程应该是这样的:
拖一个封装过的Spread控件,到窗体,然后不运行,直接右击,出现的菜单里有一个“我的设计器”,选择后进入自己的Spread设计器,编辑或保存到当前设计窗体的封装过的Spread控件上。对应的修改最终反应到项目的窗体的 实际代码文件当中
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-11 16:16:00
6#
在设计时无法调用自定义的设计器。抱歉。
回复 使用道具 举报
taxsoft
中级会员   /  发表于:2012-5-11 16:20:00
7#
原帖由 dof 于 2012-5-11 16:16:00 发表
在设计时无法调用自定义的设计器。抱歉。

SPREAD如果不经过封装肯定无法调用,如果封装呢?
简单说增加一个设计时菜单项呢?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-11 16:57:00
8#
我并没有做过这方面的尝试,从.net机制来看应该可以实现自己的右键菜单,但是不能在已有的设计时右键菜单中增加一个菜单项,而且,如果使用自己的上下文菜单,Spread默认的右键菜单和Smart tag也将全部丢失。如果需要,你可以看一下MSDN上对DesignerAttribute的使用说明。
回复 使用道具 举报
taxsoft
中级会员   /  发表于:2012-5-11 17:04:00
9#
原帖由 dof 于 2012-5-11 16:57:00 发表
我并没有做过这方面的尝试,从.net机制来看应该可以实现自己的右键菜单,但是不能在已有的设计时右键菜单中增加一个菜单项,而且,如果使用自己的上下文菜单,Spread默认的右键菜单和Smart tag也将全部丢失。如果需要,你可以看一下MSDN上对DesignerAttribute的使用说明。


既然没有暴露方法,我再考虑一下。
谢谢你!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-11 17:27:00
10#
嗯,好的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部