Где объявлять ListView, чтобы можно было менять его в любом месте программы?
Извиняюсь что без тегов, пишу с телефона, но примерно так. Должно работать
///
public partial class Form1 : Form
    {
 ListView ListView1
        public Form1()
        {
            InitializeComponent();
        }
/////
private void Form1_Load(object sender, EventArgs e)
        {
ListView1 = new ListView();
                ListView1.Location = new System.Drawing.Point(12, 12);
                ListView1.Name = "ListView1";
                ListView1.Size = new System.Drawing.Size(245, 200);
                ListView1.BackColor = System.Drawing.Color.DarkOrange;
                ListView1.ForeColor = System.Drawing.Color.Black;
                Controls.Add(ListView1);
///
 Из public void b1_click Инициализация и настроки ListView убирай
Ну так объяви ListView ListView1 = new ListView() между двумя функциями, а не внутри функции, если надо менять и из другой формы то сделай public ListView ListView1 = new ListView(). Перед каждым новым заполнением можно его очищать listview1.items.clear()