2016-06-29 93 views
0

打開多個窗體後,如何從父窗體訪問子窗體中的公共方法。例如:從父窗體訪問活動子窗體中的公共方法

在ChildForm

public int x 
{ 
    get; 
    set; 
} 
public void UpdateDatabase() 
{ 
    // Update database code using x 
} 

在ParentForm

ChildForm f = new ChildForm(); 
f.x = 1; 
f.Show(); 

private void button1_click() 
{ 
    var xx = this.ActiveMdiChild as ChildForm; 
    xx.UpdateDatabase(); 
} 

我不能使用

public static void UpdateDatabase(); 
+2

那麼問題是什麼? –

+0

打開多個childform後,如何從父表單訪問childform中的公共方法? – Ibanez1408

+0

當您將'ActiveMdiChild'強制轉換爲'ChildForm'時,'UpdateDatabase'方法應該是可訪問的,因爲它是公共的。該方法不一定是靜態的。那麼這裏真的有什麼問題? – xxxmatko

回答

0

,您可以撥打service layer。這是您的UI和數據庫代碼之間的附加層。在下面你像可以找到四層命名爲:

  • 表示層→包含UI組件
  • 服務層→包含邏輯
  • 業務層→包含您使用的類/模型。
  • 數據層→包含到數據庫的連接。


源圖像:msdn

你可以做的是過去的你的代碼複製到該層,你可以利用這些代碼這麼多,你會的。

相關問題