我正在创建一个应用程序,其中一部分需要添加{DLL}从DLL文件导入的i
个自定义toggle switch控件,并根据每个控件设置IsChecked
属性。到数据库。
昨天花了整整一天的时间搜索我怎么能这样做并尝试等...我可以这样做: -
Using ToggleSwitch;
for (int i = 1; i < 8; i++)
{
HorizontalToggleSwitch Switch = null;
Assembly asm = Assembly.LoadFile(Directory.GetCurrentDirectory() + "/CTS.dll");
Type[] tlist = asm.GetTypes();
foreach (Type t in tlist)
{
if (t.Name == "HorizontalToggleSwitch")
{
Switch = Activator.CreateInstance(t) as HorizontalToggleSwitch;
break;
}
}
Switch.Name = "MasterSwich" + i;
Switch.HorizontalAlignment = HorizontalAlignment.Right;
Switch.Margin = new Thickness(0, 0, 35, 0);
Switch.Width = 100;
Switch.Height = 35;
Switch.IsChecked = true;
SwichesPanel.Children.Add(Switch);
}
这给出了一个很好的错误: -
System.IO.FileNotFoundException:&#39;无法加载文件或程序集 &#39; ToggleSwitch,Version = 1.1.0.0,Culture = neutral, 公钥= 8637099990568f75&#39;或其中一个依赖项。该 系统找不到指定的文件。&#39;
我失踪了什么?! 怎么能解决这个问题呢?
注意:如果我将HorizontalToggleSwitch
替换为Control
,则会有效,因为我不会使用导入的dll,而只会使用本地复制的文件,但是在这种情况下,我将失去更改IsChecked
属性的能力。