草庐IT

UI_USER_INTERFACE_IDIOM

全部标签

c# - 在 Lazy<T> 中转换接口(interface)类型

我想要这样的东西:publicinterfaceIAnimal{}publicclassDog:IAnimal{publicDog(){}}publicclassCat:IAnimal{publicCat(){}}publicabstractclassTestClassBase{publicTestClassBase(){_lazyAnimal=CreateLazyAnimal();}privateLazy_lazyAnimal=null;publicIAnimalAnimal{get{IAnimalanimal=null;if(_lazyAnimal!=null)animal=_la

c# - 从后台线程通知 UI 线程

我正在尝试在后台下载一些页面,其内容将被插入到数据库中。我需要在某种后台线程(BackgroundWorker或ThreadPool,由于我可以将事情排队的方式而首选)上执行此操作,但我还需要在作业完成后更新UI。如何通知UI线程作业已在WindowsPhone上完成?我见过有人使用Dispatcher.beginInvoke,但不清楚他使用的是什么(Worker或Pool)——这是执行此操作的正确方法吗? 最佳答案 Deployment.Current.Dispatcher.BeginInvoke(()=>{//changeUIh

c# - 在 C# 中分离 UI 和逻辑

对于将逻辑排除在我的GUI类之外,有人有什么建议吗?我尝试使用良好的类设计并尽可能保持分离,但我的Form类最终通常会混入比我想要的更多的非UI内容,这往往会使维护变得非常痛苦。(VisualStudio2008Professional、C#、Windows应用程序)。非常感谢。 最佳答案 将您的逻辑放在一个单独的程序集中;并且,在不引用任何GUI包(例如System.Drawing、System.Windows.Forms等)的情况下构建该程序集。 关于c#-在C#中分离UI和逻辑,我

C# 如何使用接口(interface)

这是一个相对直接的问题。但我想知道通过使用接口(interface)访问单独项目中的方法的正确用法是什么。项目:Test.ClassLibrary接口(interface):publicinterfaceITest{stringTestMethod();}类:publicclassTest:ITest{publicstringTestMethod(){return"Test";}}项目:Test.WebController:publicclassHomeController:Controller{privateITesttest;publicActionResultIndex(){re

c# - 我应该将我的接口(interface)定义放在与其实现相同的 namespace 中吗

如果我定义了一个接口(interface)ITestInterface,然后立即创建一个实现该接口(interface)的类以供在应用程序中使用,是可以将类和接口(interface)保留在同一个命名空间中,还是应该将它们分开。即Test.Interfaces和Test.Interfaces.Implementation。我的界面及其实现都将在其自己的程序集中,因此我不打算创建另一个界面来包含界面本身。这与c#特别相关,但我想它可以涵盖任何语言。 最佳答案 最好使用.NET预定义类的既定约定。例如,查看System.Collecti

c# - 转换为未明确实现的接口(interface)?

假设您定义了一些任意接口(interface):publicinterfaceIInterface{voidSomeMethod();}假设有些类碰巧有一个匹配的公共(public)接口(interface),即使它们没有“实现IInterface”。即:publicclassSomeClass{publicvoidSomeMethod(){//somecode}}有没有办法让IInterface引用一个SomeClass实例?即:SomeClassmyInstance=newSomeClass();IInterfacemyInterfaceReference=(IInterface)

c# - 如何避免重复的接口(interface)代码?

由于接口(interface)不能包含实现,在我看来这会导致从接口(interface)继承的类中出现代码重复。在下面的示例中,假设设置从Stream读取的前10行左右是重复的。尽量不要关注这里的措辞,而是关注在每个类之间创建重复代码是多么容易的概念。例如:publicinterfaceIDatabaseProcessor{voidProcessData(Streamstream);}publicclassSqlServerProcessor:IDatabaseProcessor{voidProcessData(Streamstream){//settinguplogictoreadt

c# - 使用抽象方法显式实现接口(interface)

这是我的界面:publicinterfaceMyInterface{boolFoo();}这是我的抽象类:publicabstractclassMyAbstractClass:MyInterface{abstractboolMyInterface.Foo();}这是编译器错误:“修饰符‘抽象’对于此项无效。我应该如何继续使用抽象方法显式实现抽象? 最佳答案 基本上,你不能。反正不是直接的。您不能覆盖显式实现接口(interface)的方法,并且您必须覆盖抽象方法。最接近的是:boolMyInterface.Foo(){returnF

c# - 实现嵌套的通用接口(interface)

我有以下类/接口(interface)://ModelpublicclassA:IA{}//ModelLogicpublicclassB:IB{}//ModelInterfacepublicinterfaceIA{}//ModelLogicInterfacepublicinterfaceIBwhereT:IA{}我尝试使用以下代码创建一个新实例:IBfoo=newB();我收到以下错误:Cannotimplicitlyconverttype'B'to'IB'.Anexplicitconversionexists(areyoumissingacast?)有人可以解释为什么这是不可能的吗?

c# - 查找所有父类型(包括基类和接口(interface))

我希望能够找到特定类型的所有父类型(基类和接口(interface))。EG如果我有classA:B,C{}classB:D{}interfaceC:E{}classD{}interfaceE{}我想知道A是BCDandEandObject最好的方法是什么?有没有一种反射(reflection)方法可以做到这一点,或者我需要自己做点什么。====编辑====是这样的吗?publicstaticIEnumerableParentTypes(thisTypetype){foreach(Typeiintype.GetInterfaces()){yieldreturni;foreach(Typ