클래스에 항목을 동적으로 추가하고 싶지만 다른 사람이 여기에서 내 구문을 도와야 할 수도 있습니다.다이내믹 클래스 아이템은 어떻게 만들 수 있습니까? C# WinForms
나는이 같은 ContainerTank
클래스를 가지고 :
class ContainerTank {
double radius;
public ContainerTank(int diameter) {
radius = (double)diameter/2;
}
public int Gauge {get;set;}
public double Volume { get { return (3.1415)*(radius*radius)*Gauge; } }
}
우리 사이트 각각 10 개 탱크 (물 탱크, 기름 탱크 등)의 터무니없는 값으로 아무도 아무것도 할 수 있습니다.
사이트 당 각 탱크의 데이터를 유지하기 위해 List<ContainerTank> tankList
을 사용하는 클래스를 쉽게 만들 수 있지만, 사이트에 몇 개의 탱크가 있는지 지정하여 각 클래스를 초기화하는 방법을 찾고 싶습니다. 개별적으로.
예를 들어 탱크 2 개가있는 새 사이트를 만들면 Tank1과 Tank2 (또는 제로 인덱스를 사용하려면 Tank0과 Tank1)에 대한 맵을 갖게됩니다.
왜?
코드를 사용하는 개발자는 Visual Studio의 IntelliSense로 Tank1 및 Tank2 팝업을 볼 때 컬렉션을 사용하지 않고 컨트롤을 사용할 때 도움이됩니다.
주로 할 수 있는지, 어떻게 구현할 지 알고 싶습니다.
"모든 탱크"를 처리하려면 어떻게해야합니까? 실제로 인텔리 센스를 얻으려는 사람들의 소장품을 가지고 있지 않다는 불편 함이 있습니까? 또한 한 사이트에 하나의 탱크 만 있다면? 개발자는 여전히 Tank2를 볼 수 있습니까? –
사이트가 하나의 탱크 만 가지고 있다면 사이트는'obj = new Site (1)'을 사용하여 생성되고 intellisense는 Tank1 만 표시합니다. 사이트에 탱크가 없으면'obj = new Site (0)'을 사용하여 구성되며 intellisense는 탱크를 표시하지 않습니다. 그러나 아담 로빈슨 (Adam Robinson)의 게시물을 보면, 이렇게 할 수없는 것처럼 보입니다. – jp2code
컴파일 시간 대 런타임? –