日期:2014-05-17  浏览次数:20883 次

在线等!急需解决问题,如何知道DLL 的里事件?
我有个主程序,一个有窗体的DLL 
主程序通过 Assembly.LoadFrom 动态加载的DLL 
DLL 的窗体上有个 数据保存的按钮,如何在保存后 通知主程序数据保存成功????
最好有代码,谢谢!!!!!!!

------解决方案--------------------
子窗口:

C# code

public delegate void TaskComplateDelegate ();

public TaskComplateDelegate TaskComplateCallback;

任务完成后
 if (TaskComplateCallback != null)
     TaskComplateCallback();

------解决方案--------------------
可以看看这篇文章:
Using Delegates to Communication Between Windows Forms
http://www.c-sharpcorner.com/UploadFile/mosessaur/winformsdelegates09042006094826AM/winformsdelegates.aspx
------解决方案--------------------
谁会有现成的代码阿楼主,只能告诉你怎么做了,你在Dll中扩展进去一个bool变量,如果数据保存则bool值改变,然后再外层在次动态调用一下DLL,这次只调DLL中的Bool,这样就可以判断你是否保存成功了,我遇到过这个情况,不过是在WIN8WINRT和C#交互时遇到的,情况是一样的,你可以看下方法。http://dongtingyueh.blog.163.com/blog/static/4619453201252712631541/
------解决方案--------------------
探讨

或者看看这个:

C#窗口间控制 通过委托及事件实现
http://hi.baidu.com/xinerlian/blog/item/26ed58b7144341f230add13c.html

------解决方案--------------------
这种动态加载的类型,最好有个接口约束,将对象转换为特定接口后就方便操作了,否则要通过反射赋值,很麻烦哦。