草庐IT

delphi-prism

全部标签

c# - Prism,将 Views 和 ViewModels 与 Unity 连接起来,试图理解它

CreatingtheViewandViewModelUsingUnityUsingUnityasyourdependencyinjectioncontainerissimilartousingMEF,andbothproperty-basedandconstructor-basedinjectionaresupported.Theprincipaldifferenceisthatthetypesaretypicallynotimplicitlydiscoveredatruntime;instead,theyhavetoberegisteredwiththecontainer.Typi

c# - 哪个是 delphi "class of "(类的类型)的 C# 声明?

在delphi中,我可以像这样声明一个类型的类typeTFooClass=classofTFoo;TFoo=classend;此声明的C#等效项是什么? 最佳答案 您在C#中可以获得的最接近的是Type类型,它包含有关类型的元数据。publicclassA{}publicstaticintMain(string[]args){Typeb=typeof(A);}这不是完全相同的。在Delphi中,“其他类型的类型”本身就是可以分配给变量的类型。在C#中,“其他类型的类型”是一个System.Type实例,可以分配给System.Typ

c# - WPF 和 Prism View 叠加

我需要一些帮助来使用prism框架来叠加View。它比那个复杂一点所以让我解释一下。我也可能想得太多了:D我有shell(wpf窗口),我在一个模块中有2个View(A和B-两个用户控件)。当shell加载时,它加载ViewA。在ViewA上,我有一个“弹出”ViewB的按钮对于一些用户输入。所以我自然会想到某种模式窗口/控件,甚至可能是弹出窗口。然而,我遇到的弹出窗口问题是,当我移动shell时,弹出窗口保持固定,并且它不会阻止ViewA中的事件。我尝试禁用ViewA以停止触发事件,我也尝试使用ato让ViewB随shell一起移动。只有Canvas有效,但我现在需要一种方法来阻止它

c# - 在Delphi中调用nil引用的方法是 "supported"吗?

以下Delphi程序根据nil引用调用方法并运行良好。programProject1;{$APPTYPECONSOLE}typeTX=classfunctionStr:string;end;functionTX.Str:string;beginifSelf=nilthenbeginResult:='nil'endelsebeginResult:='notnil'end;end;beginWriteln(TX(nil).Str);Readln;end.但是,在结构相似的C#程序中,将引发System.NullReferenceException,这似乎是正确的做法。namespaceCo

c# - Delphi 开发人员转向 C#

我已经有一段时间是Delphiholic了,最近我也在考虑学习一些C#,但是我有点“害怕未知”,我已经做了一些简单的应用程序作为测试驱动C#,我不得不承认我喜欢它,但是我不太喜欢这个IDE...这里所说的问题,如果其他走这条路的人会回答,我将不胜感激:作为一名Delphi开发人员,Delphi语言的“主要基本”变化是什么(基本是指基本——实用函数、流等),我习惯于将“系统、类、窗口”添加到不使用“使用System.XXX.YYY.ZZZ”,我试图在我的脑海中实现从Delphi到C#的部分平等,直到我看到Delphi与C#携手并进的地方等等......我希望问题很清楚,如果没有,请毫不犹

c# - 坚持使用 Delphi.NET 和 Delphi 2007

我的公司有一个大问题。我们在Delphi.NET中开发了一个包含超过1.000.000行代码的应用程序。因此,我们只能使用Delphi2007和.NET2.0。随着技术和用例的发展,我们需要迁移到另一个开发平台。到目前为止,我们尝试了几种promise将Delphi.NET转换为C#代码的工具-每个工具都有几个问题,例如错误的字符串索引(Delphi1C#0)或何时使用类型来声明数组边界。采用这种方法后,我们尝试反编译Delphi.NET程序集-从中​​返回的代码几乎不可读,并且有数百个调用Borland特定程序集的辅助函数。我已经考虑过自己编写一个转译器的可能性,但是Delphi的歧

c# - 从 Delphi 调用 C# dll

我用单一方法编写了.Net3.5dll,供Delphi.exe调用。不幸的是,它不起作用。步骤:1.使用代码创建C#3.5dll:publicclassMyDllClass{publicstaticintMyDllMethod(inti){MessageBox.Show("Thenumberis"+i.ToString());}}转到AssemblyProperties-->AssemblyInformation并选中“MakeAssemblyCOM-Visible”使用RegAsm.exe注册我的dll这会抛出Delphi异常,表明它无法连接dll。从非托管代码启用C#托管dll的使

c# - Prism 程序集引用失败 : System. Windows.Interactivity

我的C#/WPFPrism(v4.0)应用在加载/解析Prism库附带的System.Windows.Interactivitydll时一直存在问题。我已经连续工作了三天,试图调试/解决这个问题。我已经学到了很多关于.Net程序集解析的知识,但到目前为止我的问题还没有成功,所以我想我应该求助于StackOverflow社区以寻求帮助。:)我有一个模块作为更大的Prism应用程序的一部分运行,它需要引用System.Windows.Interactivity以添加行为。因此我有一个指定命名空间的XAML用户控件,如下所示:然后我尝试在该UserControl的子元素上设置行为,如下所示:

c# - 在 Delphi 中,Math.Round() 与 MidpointRounding.AwayFromZero 的等效项是什么?

我如何在Delphi中使用类似Math.Round和MidpointRounding.AwayFromZero的c#?等同于:doubled=2.125;Console.WriteLine(Math.Round(d,2,MidpointRounding.AwayFromZero));输出:2.13在德尔福? 最佳答案 我相信DelphiRTL的SimpleRoundTo函数本质上是这样做的,至少如果FPU舍入模式是“正确的”。请仔细阅读其文档和实现,然后确定它是否足以满足您的目的。但请注意,设置像这样的单个舍入操作的舍入模式是使用全

c# - Delphi - 是否有任何等效于 C# 锁的东西?

我正在用Delphi编写一个多线程应用程序,需要使用一些东西来保护共享资源。在C#中,我会使用“lock”关键字:privatesomeMethod(){lock(mySharedObj){//...dosomethingwithmySharedObj}}在Delphi中我找不到任何类似的东西,我只找到了TThread.Synchronize(someMethod)方法,它通过在主VCL线程中调用someMethod来防止潜在的冲突,但这并不是我想要做的.......编辑:我正在使用Delphi6 最佳答案 (Un)幸运的是,您无法