使用GUID加载WPF用户控件

时间:2012-05-23 09:38:28

标签: c# wpf guid

我正在研究WPF应用程序。我有大量的Usercontrols,我试图从中心位置动态加载它们。 我想将Usercontrol名称(或其他?)存储在数据库中,并根据权限级别将其加载到用户。 这里我打算只存储UserControl类类型的GUID

var typeGuid = typeof(MyUserControl).GUID.ToString("N");

并将此GUID存储在数据库中。 当我想加载这个Usercontrol时,

string typeGuid = // Get the GUID From database
var myUserControlType = Type.GetTypeFromCLSID(new Guid(typeGuid));
var userControl= (UserControl)Activator.CreateInstance(myUserControlType);

我在这里遇到流动的错误,

  

检索具有CLSID的组件的COM类工厂   {A355C352-38B2-3A88-864D-09DA12BE89FE}由于以下原因而失败   错误:80040154未注册类(HRESULT异常:   0x80040154(REGDB_E_CLASSNOTREG))。

另外,这个保存GUID在数据库中是个好主意吗?

0 个答案:

没有答案