Search code examples
c#datagridviewtabcontroldynamically-generated

how to send the var value full of lists to tabcontrol


i want create a dynamical datagridview in dynamical tabpage and show the list of var value in my form this is my code but it's not working,no error enter image description here


Solution

  • Your code works fine, it seems it is a designing issue and the TabControl is not visible for some reason.

    Try adding a Panel through the designer and then replace:

    this.Controls.Add(dynamicTab);
    

    With:

    somePanel.Controls.Add(dynamicTab);
    

    If you want to create another Page:

    private void button1_Click(object sender, EventArgs e)
    {
        CreatePageGrid(qsreach.ToList(), "Page 1");
        CreatePageGrid(qsreach2.ToList(), "Page 2");
        CreatePageGrid(qsreach3.ToList(), "Page 3");
    }
    
    TabControl dynamicTab;
    
    private void CreatePageGrid(object dataSource, string pageName)
    {
        if (dynamicTab == null)
        {
            dynamicTab = new TabControl();
            this.Controls.Add(dynamicTab);
        }
    
        DataGridView dvg = new DataGridView();
        TabPage t2 = new TabPage();
        dvg.DataSource = dataSource;
        t2.Text = pageName;
        t2.Controls.Add(dvg);
        dynamicTab.Controls.Add(t2);
    }