Можно ли listView передать как параметр в метод?

Рейтинг: 0Ответов: 2Опубликовано: 19.04.2015

Есть несколько listView, в которые передаются разные Dictionary. Пришлось сделать для каждого listView свой метод (как код ниже). Возможно ли listView передать как параметр в метод? Или как решить эту проблему - чтобы остался только один метод.

private void AddDictionaryToListView1(Dictionary<string, int> dictionary)
{

// тут какой-то код

    this.listView1.Invoke(new Action(() => { this.listView1.Items.AddRange(lvItems); }));
}


private void AddDictionaryToListView2(Dictionary<string, int> dictionary)
{

// тут какой-то код

    this.listView2.Invoke(new Action(() => { this.listView2.Items.AddRange(lvItems); }));
}

Ответы

▲ 2

Можно. Если честно, не понял в чем суть вопроса :)

private void AddDictionaryToListView(ListView listview, Dictionary<string, int> dictionary)
{
    // тут какой-то код
    listView.Invoke(new Action(() => { listView.Items.AddRange(lvItems); }));
}
▲ 2

Можно передавать объекты параметром в методы в виде :

public void example(Object o)

Таким образом, чтобы передать ListView:

public void example(ListView listV){
// code here
}

Перед тем,как вызвать метод :

ListView listV = this;

Final:

ListView listV = this;
AddDictionaryToListView2(listV);
private void AddDictionaryToListView2(Dictionary<string, ListView listV){

this.listView2.Invoke(new Action(() => { listV.listView2.Items.AddRange(lvItems); }));