0

我想将列表框中的选定项目用作字符串。从 listBox1_SelectedIndexChanged 它工作正常。我如何在课堂上全局使用它?

我将它放在班级的顶部,并试图将其设为静态,但出现以下错误。有人可以告诉我如何参考吗?

错误 1 ​​非静态字段、方法或属性需要对象引用

public class
{
static string listme = listBox1.GetItemText(listBox1_SelectedIndexChanged);
 public Form1()
        {
            InitializeComponent();
            this.Shown += new EventHandler(listBox1_SelectedIndexChanged);

        }
public void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
             listBox1.SelectedIndex = 0;
           string items = listBox1.GetItemText(listBox1.SelectedItem);

           MessageBox.Show(Backups + @"\" + items);


        }
4

1 回答 1

1
public class
{
static string listme;

public Form1()
        {
            InitializeComponent();
            this.Shown += new EventHandler(listBox1_SelectedIndexChanged);

        }
public void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            listBox1.SelectedIndex = 0;
            listme = listBox1.GetItemText(listBox1.SelectedItem);

            MessageBox.Show(Backups + @"\" + listme);


        }

如果你需要在你的类中使用它,你不需要它是静态的,因为它不会重新计算它的值。问题中有一些我无法理解的代码。例如listBox1.SelectedIndex = 0;里面的第一行SelectedIndexChanged......我想这是在 fromshown用于调试时提供默认值,但如果你把它留在那里,它将阻止用户更改选择......

于 2013-07-09T11:28:06.353 回答