【问题标题】:Calling Method from Separate Class to MainWindow.cs [duplicate]从单独的类调用方法到 MainWindow.cs [重复]
【发布时间】:2017-02-07 23:19:39
【问题描述】:

我想在 VB 中这样做要容易得多,但是如何调用另一个类的方法呢?这就是我在 Sql.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#
    }

【问题讨论】:

  • 这真的是编程的基本步骤,学会google搜索吧!
  • 你要么需要一个定义它的类的实例,要么它需要是一个静态方法并且你必须在它之前指定类名。
  • 哦,好的。我一直在寻找一种方法来保持干净的代码并将我的代码分类为类似于模块的东西,但这些不在 C# 中。这就是为什么我按照原来的方式设置班级。
  • 你需要一本书或网站来学习如何用 C# 编码

标签: c# wpf


【解决方案1】:

FlLoadMembers() 必须在 class 中。您需要创建该类的对象,然后您可以调用该函数。因此,如果您的函数 FlLoadMembers() 在名为 Class1 的类中,那么您可以这样做:

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

希望对你有帮助。

【讨论】:

  • 那么你的意思是最好将这些方法中的每一个放在他们自己的类中并相应地调用它们?我习惯于在 VB 中使用模块,这就是为什么我认为这会起作用。
  • 如果你想共享一个函数的同一份副本,你可以将它标记为static,然后你就不需要创建对象来访问该对象。它会给你一种module在VB中的感觉。
  • 好的,这样更容易。谢谢! :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多