의 열거 I 클래스 다음과 같이 있습니다공분산 - 인터페이스
public partial class GmxGlobalList : DynamicBindingListBase<GmxGlobal>
어디 IEnumerable<T>
에서 확장 DynamicBindingListBase
구현 Collection<T>
-이 경우 IEnumerable<GmxGlobal>
에. 내가
public partial class GmxGlobalList : DynamicBindingListBase<GmxGlobal>, IEnumerable<IGmxGlobal>
같은 GmxGlobalList
을 선언 이제 원하는
public partial class GmxGlobal : IGmxGlobal
같은 클래스
GmxGlobal
은
을 정의하지만이 방법 IEnumerator<IGmxGlobal> GetEnumerator()
를 선언해야하기 때문에이 작동하지 않습니다 - 그러나 이것은 이미 구현 Collection<T>
에서 - IGmxGlobal
이 아니라 GmxGlobal
으로 표시됩니다. 나는 왜 당신에게 묻겠습니다. 왜 IEnumerator<IGmxGlobal> GetEnumerator()
을 구현해야합니까? - GmxGlobalList가 IEnumerable
또는 ICollection
또는 IList
이 IGmxGlobal
(또는 기타 IGmxGlobal
이 열거 될 수있는 다른 것)이라고 알릴 수있는 것은 무엇을해야합니까?
Base가 DynamicBindingListBase이면 충분하지 않습니까? 왜 IEnumerable이 필요한가요? –
Tigran
GmxGlobalList는 IEnumerable을 정의합니다. IGmxGlobalList 인터페이스도 구현합니다. 자,이 인터페이스 (IGmxGlobalList) IEmumerable 구현하기 때문에 나는 또한 IGmxGlobalList 것으로 알고있는 GmxGlobalList 개체를 사용해야하고 또한 어디에만 IGmxGlobal 및 GmxGlobal 알 수있는 열거합니다. 이를 위해 IGmxGlobalList : IEnumerable 을 선언해야합니다. –
BennoDual