2016-09-29 64 views
-3

我想在VB中做這件事要容易得多,但是如何調用另一個類的方法呢?這是我有我的Sql.cs內:從單獨的類到MainWindow.cs的調用方法

public static MainWindow MainWindow; 
public void FlLoadMembers() 
    { 
     SetConnection(); 
     SqlCon.Open(); 
     SqlCmd = SqlCon.CreateCommand(); 
     const string commandText = "select firstname, lastname from members"; 
     SqlAdapter = new SQLiteDataAdapter(commandText, SqlCon); 
     DsMembers.Reset(); 
     SqlAdapter.Fill(DsMembers); 
     DtMembers = DsMembers.Tables[0]; 
     MainWindow.lstPanelMembers.Items.Add(DtMembers); 
     SqlCon.Close(); 
    } 

試圖把這個在MainWindow.cs

private MainWindow() 
    { 
     InitializeComponent(); 
     GetVersion(); 
     FlLoadMembers(); //This doesn't work apparently in C# 
    } 
+1

這真是編程的基本步驟,學會在谷歌搜索! – mybirthname

+1

您可能需要定義它的任何類的實例,或者它需要是一個靜態方法,並且您必須在它之前指定類名稱。 – juharr

+0

噢,好的。我正在尋找一種方法來保持乾淨的代碼,並將我的代碼分類爲像Module這樣的東西,但這些不在C#中。這就是爲什麼我按照原來的方式進行課堂設置的原因。 – RockGuitarist1

回答

2

FlLoadMembers()必須在class。您需要創建該類的對象,然後可以調用該函數。所以,如果你的函數FlLoadMembers()是在名爲Class1類,那麼你可以這樣做:

Class1 obj = new Class1(); //Creating the object. 
obj.FlLoadMembers();//Calling the function. 

希望它可以幫助你。

+0

所以你在說什麼可能是最好把這些方法放在他們自己的類中,並相應地調用它們?我習慣於在VB中使用模塊,這就是爲什麼我認爲這將工作大聲笑。 – RockGuitarist1

+0

如果你想共享一個函數的副本,你可以將它標記爲'static',然後你不需要創建訪問該對象的對象。它會給你一個VB模塊的感覺。 – vivek

+0

好的,這使得它更容易。謝謝! :) – RockGuitarist1