0

このトピックに関連: https://stackoverflow.com/questions/15170054/context-hint-using-combobox

別のクラスで文字列を使用する方法はありますか:

namespace KeyWord
{
    public class KeyWord
    {
        //Definitions
    public String[] keywords = { "abstract", "as", "etc." };
    }
}

メインフォームの mylistbox アイテムに?

lb = new ListBox();
        Controls.Add(lb);

事前に

4

1 に答える 1

0

もちろん。このようなことを試してください。

KeyWord kw = new KeyWord();
foreach (string str in kw.keywords)
{
    lb.Items.Add(str);
}

または、データバインディングを使用できます。

また、そのクラスから文字列の配列を取得するだけの場合は、そのオブジェクトのインスタンスをインスタンス化する必要がないように、静的プロパティを使用することをお勧めします。パブリック フィールドの代わりに、どちらの方法でもパブリック データを公開するためにプロパティを使用することをお勧めします。

代わりに静的プロパティを使用する例を次に示します。

public class KeyWord
{
    // Private field, only accessible within this class
    private static string[] _keywords = { "abstract", "as", "etc." };

    // Public Static Property, accessible wherever
    public static string[] Keywords
    {
        get { return _keywords; }
        set { _keywords = value; }
    }
}

それで:

foreach (string str in KeyWord.Keywords)
{
    lb.Items.Add(str);
}

この例ではクラスをインスタンス化していないことに注意してください (no new KeyWords())

于 2013-03-02T04:02:08.137 に答える