1

クラスで機能する形式の関数を取得しようとしています。

public void Say(string Text)
    {
        lalSay.Text = Text;
    }

これはフォーム内のコードです。

Say("Darn i dont have" + ItemCost + "Bits.");
                          //^this is a string in my program

これはクラスにあります。

何が悪いのかわかりませんか??

クラスで関数を使用できません。

4

2 に答える 2

2
Say(Darn i dont have" + ItemCost + "Bits.);

あなたの引数は文字列ではありません。このように使用してください

Say("Darn i dont have" + ItemCost + "Bits.");
//   ^ String one         ^ variable  ^ string two

このようなコード"some text"は文字列として扱われます。

于 2013-11-14T23:42:53.017 に答える
0

あなたの質問には詳細が欠けていますが、おそらくこれが出発点です。

「クラスで関数を使う」ことができない場合、このように消費していますか?

public class Form1:Form{
    public void Say(string Text)
    {
        lalSay.Text = Text;
    }
}

public class AnotherClass{
    public void ConsumingMethod()
    {
        var say = new Form1();
        say.Say("Darn i dont have" + ItemCost + "Bits.");
    }   
}

編集: Form クラスのメソッドを別のクラスで使用するのは悪いコードです。独自のクラスにビジネス ロジックを配置し、GUI レイヤーでそれを使用する必要があります。メソッドをサポート クラスに移動するSayことは、フォーム内から別のクラスから呼び出すよりも優れた方法です。

于 2013-11-14T23:57:11.010 に答える