将参数传递给类构造函数的简单方法是什么?
我想我需要从ObservableCollection派生以容纳该参数,但不确定最好的方法是什么。
// constructor
class MyClass(object myParam)
{
// do something here
}
// usage
Items = new ObservableCollection<MyClass>(); // How do I pass myParam?
答案 0 :(得分:2)
创建集合不会分配该类的任何对象。当您Items.Add(new MyClass(<argument>)
执行此操作时,传递参数。
答案 1 :(得分:1)
可以通过以下方式
// class
class MyClass
{
// constructor
public MyClass(object myParam)
{
}
}
// make a object
object param = new object();
// pass param
var Items = new ObservableCollection<MyClass>(){new MyClass(param)};
答案 2 :(得分:0)
完全可以这样写:
public MyClass(MyClass[] myParam)
{
// do something here
}
类的代码可以将类本身用作类型。在本机C ++中,您必须提供一个原型来执行此操作,但是到.NET出现时,编译器才能够弄清楚这一点。
如果MyClass是通用集合,则代码如下:
class MyClassCollection : List<MyClass>{
public MyClass(MyClass myParam){
// do something here
}
}
我不知道为什么您会认为-在所有集合类中-您需要从ObservableCollection派生。您可以从中衍生出,但没有任何强迫您选择的东西。