0

リストが DataGridView に表示されない理由がわかりません。dataGridView1.DataSource =Actors.ToList(); のコメントを削除すると、実行されます...しかし、button_clickを押したときに実行する必要があります。何が間違っている可能性がありますか?

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        LoadData();
    }


    public void LoadData()
    {
        List<Actor> actors = new List<Actor>
    {
        new Actor(){ PersonId = 1, ForNavn = "xxxx", EtterNavn = "bbbbb", Adresse = "Hhhhhh", PostNr = 37325, PostSted = "aaaa" },
        new Actor(){ PersonId = 2, ForNavn = "ggggg", EtterNavn = "ddddd", Adresse = "Dssssss", PostNr = 37464, PostSted = "ssfff"  },
    };
        //dataGridView1.DataSource = actors.ToList();
    }


    private void btnSok_Click(object sender, EventArgs e)
    {
        List<Actor> actors = new List<Actor>();

        var query = from actor in actors
                    select actor;

        dataGridView1.DataSource = query.ToList();

    }
}

}

4

2 に答える 2

2
public partial class Form1 : Form
{
    private List<Actor> _actors;
    public Form1()
    {
        InitializeComponent();
        LoadData();
    }


    public void LoadData()
    {
        _actors = new List<Actor>
    {
        new Actor(){ PersonId = 1, ForNavn = "xxxx", EtterNavn = "bbbbb", Adresse = "Hhhhhh", PostNr = 37325, PostSted = "aaaa" },
        new Actor(){ PersonId = 2, ForNavn = "ggggg", EtterNavn = "ddddd", Adresse = "Dssssss", PostNr = 37464, PostSted = "ssfff"  },
    };
    }


    private void btnSok_Click(object sender, EventArgs e)
    {

        var query = from actor in _actors
                    select actor;

        dataGridView1.DataSource = query.ToList();

    }
}

btnsOK のアクターが再び宣言され、ロードされていないため、一種の空白です。

于 2012-06-26T21:38:58.397 に答える
1

ボタンクリックイベントでアクターリストが空であるため

代わりにこれを使用してください:

 List<Actor> actors = new List<Actor>
    {
        new Actor(){ PersonId = 1, ForNavn = "xxxx", EtterNavn = "bbbbb", Adresse = "Hhhhhh", PostNr = 37325, PostSted = "aaaa" },
        new Actor(){ PersonId = 2, ForNavn = "ggggg", EtterNavn = "ddddd", Adresse = "Dssssss", PostNr = 37464, PostSted = "ssfff"  },
    };
于 2012-06-26T21:34:00.510 に答える