delphi prism能使用任何语言实现的.Net的控件吗?

理论上任何语言实现的.Net元件,别的语言都能复用。但有没有一些特殊的地方呢?

用devexpress公司的元件来试试,它主要是用c#写的,很早有支持delphi.Net的,因为delphi.Net夭折,现在也没有纯支持prism的。

 

下载了DXperience7.3版本,是for VS2005的,支持.Net2.0,在VS2010下可以编译过。但换成.Net4.0编译不过。

VS2010中叶不能正常使用,拉不到画面上。

 

 

从这里下载一个DXperienceUniversal-10.1.7试用版或破解版,它支持VS2010

http://smartsoft.5d6d.com/thread-5909-1-1.html

 

安装,过程很长。

安装后启动VS2011下的delphi prism,从菜单DevExpress/About…可以看到:

  

新建Visual C#”windows窗体应用程序,很慢(使用delphi是幸福的)。

在工具箱中找到ButtonEditTreeList,哦,好几百个元件,也没有像delphi xe那样的查找框,找晕了(使用VS的怎么受得了??)

把这两个元件拽到form1画面上去,写代码运行,没有问题。偶尔设计画面关闭后,再次打开时,会打不开,出现“类别DevExpress.XtraEditors.ButtonEdit找不到“这样的错误,可能与授权文件licenses.licx有关,没有细究。搞几次又正常了。

 

关闭解决方案,重新建立一个delphi prism”windows form application”,还是很慢,找到ButtonEdit,TreeList,拖到mainform上,在treelist1上右键,选“Run designer“弹出编辑器,(devexpress真是强大),设定好Column,

 

写个增加Node的代码:

method MainForm.button1_Click(sender: System.Object; e: System.EventArgs);

var

  vNode:DevExpress.XtraTreeList.Nodes.TreeListNode;

begin

  vNode:=self.treeList1.AppendNode(nil,nil);

  vNode.SetValue(Column_OID,100);

  vNode.SetValue(Column_AID,'A0001');

  vNode.SetValue(Column_Name,'Shanghai');

end;

 

写个控制customdraw事件显示不同颜色的代码:

method MainForm.treeList1_CustomDrawNodeCell(sender: System.Object; e: DevExpress.XtraTreeList.CustomDrawNodeCellEventArgs);

var

  o:Object;

begin

  //o:=e.Node.GetValue(Column_OID);

  //buttonEdit1.Text:=o.GetType.ToString;

  if e.Node.GetValue(Column_OID).ToString='2' then

    e.Appearance.BackColor:=Color.Red;

end;

 

运行,正常。

 

 

 

目前只确认了prism可以使用c#写的元件,有没有语言间特殊的地方因为引起问题还不知道........

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

火星牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值