2012-07-09 48 views

回答

0

實際上你有很多選擇。這一切都取決於您的應用程序的代碼/架構,但通常您要查找的是代表。 這裏是代表的入門級文章:linkhere是一些基本例子的鏈接,這些例子會向您介紹Actions和Lambdas。

或者,如果這兩個表單可以互相看到(如果您在一個父表單中有兩個表單的引用),則可以在源表單上創建一個事件並在目標表單上訂閱它,並將數據傳入那種方式。

的源代碼格式:

•定義委託

public delegate void RibbonDataHandler(string); 

•定義事件

public event RibbonDataHandler RibbonData; 

•d efine的方法來執行事件

protected virtual void OnRibbonData(string value) 
{ 
    if(RibbonData != null) 
     RibbonData(value); 
} 

•上調用的DataGridView的的DoubleClick事件處理函數的事件

string value = // Get Value from the gridView 
OnRibbonData(value); 

目標表單: •添加公共財產設置TextBox

public string TextBoxValue 
{ 
    get { return txtValue.Text; } 
    set { txtValue.Text = value; } 
} 

父窗體:

•添加這兩種形式的字段

private Form _sourceForm; 
private Form _destinationForm; 

•初始化形式

// Well, initialize the forms in the way you need it, maybe on the Load event? 
_sourceForm = new SourceForm(); 
_destinationForm = new DestinationForm(); 
_sourceForm.RibbonData += new SourceForm.RibbonDataHandler(OnRibbonData); 

•定義RibbonData處理器

private void OnRibbonData(string value) 
{ 
    _destinationForm.TextBoxValue = value ?? String.Empty; 
} 

免責聲明: 我寫了這一切從我的頭,沒有VS在這一刻,如果你有更多問題或者有什麼不工作,發表評論。 :)

相關問題