オブジェクトのタイプを取得し、動的にオブジェクトとして設定することは可能ですか。すべて同じプロパティを含むいくつかのViewModelがあり、このようなことをしたい
if (this.DataContext is CamerasViewModel)
{
//Type type = Type.GetType((this.DataContext.ToString());
object o = Assembly.GetExecutingAssembly().CreateInstance(this.DataContext.GetType().ToString());
Type type = o.GetType();
foreach (ButtonViewModel button in (this.DataContext as type).Buttons)
{
if (button.DisplayName == this.Content.ToString())
{
this.Template = (ControlTemplate)this.FindResource(button.TemplateResource.Substring(0, button.TemplateResource.Length - 3) + "pr");
break;
}
}
}
this.DataContext を CamerasViewModel と言う代わりに、this.DataContext を THEDYNAMICTYPE と言いたい
助言がありますか?