可能重复:
使用 c# 反射调用构造函数
如何从字符串变量调用类的构造函数?
在 PHP 中,我可以这样做:
$myclassName = '\Namespace\MyClass';
$myParameters = array ('param1', 'param2');
$reflection = new \ReflectionClass($myclassName );
$myClassInstance = $reflection->newInstanceArgs($myParameters);
就像我在 C# 中可以做的那样?
我有一个类似的视图列表
- 人物视图
- 屋景
- 车景
和她的 ViewModel
- 人视图模型
- 房屋视图模型
- 汽车视图模型
我的代码中有一个 ObservableCollection 我不想为每种类型添加一个新命令
AddPersonView = new RelayCommand(() =>
{
//code
});
AddCarView = new RelayCommand(() =>
{
//code
});
//etc
我想将 CommandParameter 传递给同一个命令
AddView = new RelayCommand((name) =>
{
// pseudo code
var o = CreateIntance(name + "View");
o.DataContext = CreateIntance(name + "ViewModel");
_observableList.Add(o);
// end
});