2013-09-06 5 views
0

인터페이스 클래스와 양식이있는 DLL이 있습니다.dll의 클래스에서 양식 변수에 액세스

public class Main : M.ModuleInterface 
{ 
    void M.ModuleInterface.showForm() 
    { 
     Form1 frm = new Form1(); 
     frm.ShowDialog(); 
    } 

    List<byte> M.ModuleInterface.ReadAll() 
    { 
     List<byte> buffer = new List<byte>(); 
     return buffer; 
    } 
} 

문제는 내가 DLL의 형태의 값을 읽어 액세스 할 수 있도록하려면 텍스트 상자를 가지고있다/ReadAll 메쏘드() 메소드에서 전달 가능하면 인터페이스 클래스에서 액세스 제어를 설정합니다. 이것을 어떻게 할 수 있습니까? Form1.cs에 public 정적 멤버를 사용하여 public static 클래스를 만들었지 만 frm.MyStaticClass를 사용하여 액세스 할 수 없습니다. 감사!

+0

'Read1'에서 액세스 할 수있는 텍스트 상자가'Form1'에 있다고 말하는 것입니까? –

+0

@DStanley 올바른지, 가능하면 다른 방법이 사용됩니다. – user1015551

답변

1

개인적인 대답에 충분한 정보를 제공하지 않았습니다. 하지만 여기에 내가 dll에서 양식에 액세스하는 방법입니다. 이제 우리는 다음과 같이 보이는 DLL 파일을 withing에 클래스가 있다고 가정 해 봅시다 :

namespace smth 
{ 
    public partial class mytest : Form 
    { 
     public TextBox txt; 

     public mytest() 
     { 
      InitializeComponent(); 
     } 
    } 
} 

그런 다음 우리는 다음과 같이 우리의 프로젝트에 폼을로드 할 것이다 :

Assembly assembly = Assembly.LoadFile("C:\\mydllfile.dll"); 
Type type = assembly.GetType("smth.mytest"); 
Form form = (Form)Activator.CreateInstance(type); 

는 이제 form.txt에 액세스 할 수 있습니다. 희망이 도움이됩니다.

관련 문제