相关疑难解决方法(0)

编译错误:"显式实现接口时,修饰符'public'对此项无效"

public在类上创建一个显式实现的方法时遇到此错误interface.我有一个解决方法:通过删除PrintName方法的显式实现.但我很惊讶为什么我收到这个错误.

任何人都可以解释错误吗?

图书馆代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Test.Lib1
{

    public class Customer : i1 
    {
        public string i1.PrintName() //Error Here...
        {
            return this.GetType().Name + " called from interface i1";
        }
    }

    public interface i1
    {
        string PrintName();
    }

    interface i2
    {
        string PrintName();
    }
}
Run Code Online (Sandbox Code Playgroud)

控制台测试应用代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Test.Lib1;

namespace ca1.Test
{
    class Program
    {
        static void Main(string[] args)
        {
            Customer customer …
Run Code Online (Sandbox Code Playgroud)

.net c# oop

58
推荐指数
3
解决办法
6万
查看次数

C#设置中的界面

我在项目的设置文件中为我的代码编辑器设置了配色方案.我有几个类似的设置文件,每个文件包含不同的配色方案.

要在运行时选择这些设置,我需要它们来实现ColorScheme接口.

到目前为止,代码工作得很好,只有一个主要的烦恼:每次更改设置时,界面部分都会从Designer文件中删除,因此代码不再找到它们.

有没有办法强制代码生成器将我的接口添加到生成的类?或者这是其他解决方法吗?我试图使设计器文件只读,但后来我看到很多烦人的VS对话框.

没有界面,我无法在任何东西上投射设置类.我可以通过Reflection读取它的属性,但这种方法看起来像一个丑陋的黑客.

.net c#

2
推荐指数
1
解决办法
293
查看次数

标签 统计

.net ×2

c# ×2

oop ×1