Button to Load more data to DatagridView, more than 20000 register C#












0















I have a Big doudt.



I'm trying to load my data with this code:



        SqlConnection con = new SqlConnection(Login.conectData);
con.Open();
DataSet dsFabricantes = new DataSet();
SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT TOP 100 * FROM
Fabricantes", con);
dsFabricantes.Clear();

//prencher a tabela
daFabricantes.Fill(dsFabricantes, "Fabricantes");
tabelaFabricantes.DataSource = dsFabricantes;
tabelaFabricantes.DataMember = "Fabricantes";


//para mudar o que está escrito no cabeçalho das colunas

tabelaFabricantes.Columns[1].HeaderCell.Value = "Nome do
Fabricante";
tabelaFabricantes.Columns[2].HeaderCell.Value = "Observações";

con.Close();
tabelaFabricantes.ClearSelection();


I Want to make a button to load more register in my datagridView. Onload of the app I am changing just 100 register. My question is:



How can I add a button to onClickbutton this button, my dataGrideView, Load more 100 Register and so on and so on ?



little Help
thank you
Bráulio José










share|improve this question

























  • Saying something like "Please Help me, is Very urgently" isn't going to get people to jump to help you; it makes your post look more like a plea, and the users here are volunteers using their own time (in fact, pleas often are more likely to be ignored by users). On topic: If you want more than 100 rows, why are you using TOP 100?

    – Larnu
    Nov 23 '18 at 15:15













  • Start with WPF as it has virtualization.

    – paparazzo
    Nov 23 '18 at 15:19











  • Have you tried anything so far? Have you tried adding a button and got stuck? If so please show your code.

    – sr28
    Nov 23 '18 at 15:32











  • @Larnu I put 100 because I dont want to load every 20.000 register. the app get much slowly.

    – Bráulio Joelson
    Nov 23 '18 at 15:33






  • 1





    Use skip and take to paginate over your results, never loading much more than what the user is looking at.

    – Carlo Bos
    Nov 23 '18 at 15:58
















0















I have a Big doudt.



I'm trying to load my data with this code:



        SqlConnection con = new SqlConnection(Login.conectData);
con.Open();
DataSet dsFabricantes = new DataSet();
SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT TOP 100 * FROM
Fabricantes", con);
dsFabricantes.Clear();

//prencher a tabela
daFabricantes.Fill(dsFabricantes, "Fabricantes");
tabelaFabricantes.DataSource = dsFabricantes;
tabelaFabricantes.DataMember = "Fabricantes";


//para mudar o que está escrito no cabeçalho das colunas

tabelaFabricantes.Columns[1].HeaderCell.Value = "Nome do
Fabricante";
tabelaFabricantes.Columns[2].HeaderCell.Value = "Observações";

con.Close();
tabelaFabricantes.ClearSelection();


I Want to make a button to load more register in my datagridView. Onload of the app I am changing just 100 register. My question is:



How can I add a button to onClickbutton this button, my dataGrideView, Load more 100 Register and so on and so on ?



little Help
thank you
Bráulio José










share|improve this question

























  • Saying something like "Please Help me, is Very urgently" isn't going to get people to jump to help you; it makes your post look more like a plea, and the users here are volunteers using their own time (in fact, pleas often are more likely to be ignored by users). On topic: If you want more than 100 rows, why are you using TOP 100?

    – Larnu
    Nov 23 '18 at 15:15













  • Start with WPF as it has virtualization.

    – paparazzo
    Nov 23 '18 at 15:19











  • Have you tried anything so far? Have you tried adding a button and got stuck? If so please show your code.

    – sr28
    Nov 23 '18 at 15:32











  • @Larnu I put 100 because I dont want to load every 20.000 register. the app get much slowly.

    – Bráulio Joelson
    Nov 23 '18 at 15:33






  • 1





    Use skip and take to paginate over your results, never loading much more than what the user is looking at.

    – Carlo Bos
    Nov 23 '18 at 15:58














0












0








0








I have a Big doudt.



I'm trying to load my data with this code:



        SqlConnection con = new SqlConnection(Login.conectData);
con.Open();
DataSet dsFabricantes = new DataSet();
SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT TOP 100 * FROM
Fabricantes", con);
dsFabricantes.Clear();

//prencher a tabela
daFabricantes.Fill(dsFabricantes, "Fabricantes");
tabelaFabricantes.DataSource = dsFabricantes;
tabelaFabricantes.DataMember = "Fabricantes";


//para mudar o que está escrito no cabeçalho das colunas

tabelaFabricantes.Columns[1].HeaderCell.Value = "Nome do
Fabricante";
tabelaFabricantes.Columns[2].HeaderCell.Value = "Observações";

con.Close();
tabelaFabricantes.ClearSelection();


I Want to make a button to load more register in my datagridView. Onload of the app I am changing just 100 register. My question is:



How can I add a button to onClickbutton this button, my dataGrideView, Load more 100 Register and so on and so on ?



little Help
thank you
Bráulio José










share|improve this question
















I have a Big doudt.



I'm trying to load my data with this code:



        SqlConnection con = new SqlConnection(Login.conectData);
con.Open();
DataSet dsFabricantes = new DataSet();
SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT TOP 100 * FROM
Fabricantes", con);
dsFabricantes.Clear();

//prencher a tabela
daFabricantes.Fill(dsFabricantes, "Fabricantes");
tabelaFabricantes.DataSource = dsFabricantes;
tabelaFabricantes.DataMember = "Fabricantes";


//para mudar o que está escrito no cabeçalho das colunas

tabelaFabricantes.Columns[1].HeaderCell.Value = "Nome do
Fabricante";
tabelaFabricantes.Columns[2].HeaderCell.Value = "Observações";

con.Close();
tabelaFabricantes.ClearSelection();


I Want to make a button to load more register in my datagridView. Onload of the app I am changing just 100 register. My question is:



How can I add a button to onClickbutton this button, my dataGrideView, Load more 100 Register and so on and so on ?



little Help
thank you
Bráulio José







c# sql sql-server






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 23 '18 at 15:29







Bráulio Joelson

















asked Nov 23 '18 at 15:13









Bráulio JoelsonBráulio Joelson

487




487













  • Saying something like "Please Help me, is Very urgently" isn't going to get people to jump to help you; it makes your post look more like a plea, and the users here are volunteers using their own time (in fact, pleas often are more likely to be ignored by users). On topic: If you want more than 100 rows, why are you using TOP 100?

    – Larnu
    Nov 23 '18 at 15:15













  • Start with WPF as it has virtualization.

    – paparazzo
    Nov 23 '18 at 15:19











  • Have you tried anything so far? Have you tried adding a button and got stuck? If so please show your code.

    – sr28
    Nov 23 '18 at 15:32











  • @Larnu I put 100 because I dont want to load every 20.000 register. the app get much slowly.

    – Bráulio Joelson
    Nov 23 '18 at 15:33






  • 1





    Use skip and take to paginate over your results, never loading much more than what the user is looking at.

    – Carlo Bos
    Nov 23 '18 at 15:58



















  • Saying something like "Please Help me, is Very urgently" isn't going to get people to jump to help you; it makes your post look more like a plea, and the users here are volunteers using their own time (in fact, pleas often are more likely to be ignored by users). On topic: If you want more than 100 rows, why are you using TOP 100?

    – Larnu
    Nov 23 '18 at 15:15













  • Start with WPF as it has virtualization.

    – paparazzo
    Nov 23 '18 at 15:19











  • Have you tried anything so far? Have you tried adding a button and got stuck? If so please show your code.

    – sr28
    Nov 23 '18 at 15:32











  • @Larnu I put 100 because I dont want to load every 20.000 register. the app get much slowly.

    – Bráulio Joelson
    Nov 23 '18 at 15:33






  • 1





    Use skip and take to paginate over your results, never loading much more than what the user is looking at.

    – Carlo Bos
    Nov 23 '18 at 15:58

















Saying something like "Please Help me, is Very urgently" isn't going to get people to jump to help you; it makes your post look more like a plea, and the users here are volunteers using their own time (in fact, pleas often are more likely to be ignored by users). On topic: If you want more than 100 rows, why are you using TOP 100?

– Larnu
Nov 23 '18 at 15:15







Saying something like "Please Help me, is Very urgently" isn't going to get people to jump to help you; it makes your post look more like a plea, and the users here are volunteers using their own time (in fact, pleas often are more likely to be ignored by users). On topic: If you want more than 100 rows, why are you using TOP 100?

– Larnu
Nov 23 '18 at 15:15















Start with WPF as it has virtualization.

– paparazzo
Nov 23 '18 at 15:19





Start with WPF as it has virtualization.

– paparazzo
Nov 23 '18 at 15:19













Have you tried anything so far? Have you tried adding a button and got stuck? If so please show your code.

– sr28
Nov 23 '18 at 15:32





Have you tried anything so far? Have you tried adding a button and got stuck? If so please show your code.

– sr28
Nov 23 '18 at 15:32













@Larnu I put 100 because I dont want to load every 20.000 register. the app get much slowly.

– Bráulio Joelson
Nov 23 '18 at 15:33





@Larnu I put 100 because I dont want to load every 20.000 register. the app get much slowly.

– Bráulio Joelson
Nov 23 '18 at 15:33




1




1





Use skip and take to paginate over your results, never loading much more than what the user is looking at.

– Carlo Bos
Nov 23 '18 at 15:58





Use skip and take to paginate over your results, never loading much more than what the user is looking at.

– Carlo Bos
Nov 23 '18 at 15:58












1 Answer
1






active

oldest

votes


















0














You'll need to dynamically adapt your SqlDataAdapter() call.



First set some global variables on page/formOnLoad method



global int startRow = '1';
global int maxColRank = testMaxRows();


#set left button active = false
leftButton.Active = false;


To do this, class your DataGridViewLoader separately to accept no parameters. Name the class mySqlGridViewLoaderClass()
at the beginning of this class input these values:



string MaximumRows = '100';
string StartRowIndex = StartRow.ToString();


In the SQL connector for this DataGridViewLoader, use a query similar to



SELECT colRank, col1, col2
FROM
(SELECT col1, col2,
ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
FROM Fabricantes
) AS rowNumQuery
WHERE colRank > <i>StartRowIndex</i> AND
colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
)




Your class should perform DataGridView loading operation, then return a second scalar value for MAX(colRank).



#new connector
SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT Max(colRank) FROM
(SELECT max(colRank)
FROM
(SELECT col1, col2,
ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
FROM Fabricantes
) AS rowNumQuery
WHERE colRank > <i>StartRowIndex</i> AND
colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
))", con2);
int mr = (Int32) con2.ExecuteScalar();
return mr;


class a second SQL connector loader to test max Rows and return a scalar value. name the class testMaxRows()
In the sql connector, use a query similar to:



 Select count(col1) DIST from fabricantes;


Return the count to the tr variable. The last 2 lines of maxRows class should be:



int tr = (Int32) con.ExecuteScalar();
return tr;


In your form designer, create a button for '<' and '>'
Set < button to inactive. > button to active



In the '<' ButtonOnClick() event:



rightButton.Active = true;
if (StartRow != '1')
{
StartRow -= 100;

# your class expects a return value, so we'll initialize one
int mr = (Int32) mySqlGridViewLoaderClass();

if (StartRow == 1)
{
leftButton.Active = false;
}
}


In the '>' ButtonOnClick() event:



leftButton.Active = true;

StartRow += 100;
int maxRank = (Int32) mySqlGridViewLoaderClass();

if ( maxRank >= maxColRank)
{
rightButton.Active = false;

}





share|improve this answer

























    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53449116%2fbutton-to-load-more-data-to-datagridview-more-than-20000-register-c-sharp%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    You'll need to dynamically adapt your SqlDataAdapter() call.



    First set some global variables on page/formOnLoad method



    global int startRow = '1';
    global int maxColRank = testMaxRows();


    #set left button active = false
    leftButton.Active = false;


    To do this, class your DataGridViewLoader separately to accept no parameters. Name the class mySqlGridViewLoaderClass()
    at the beginning of this class input these values:



    string MaximumRows = '100';
    string StartRowIndex = StartRow.ToString();


    In the SQL connector for this DataGridViewLoader, use a query similar to



    SELECT colRank, col1, col2
    FROM
    (SELECT col1, col2,
    ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
    FROM Fabricantes
    ) AS rowNumQuery
    WHERE colRank > <i>StartRowIndex</i> AND
    colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
    )




    Your class should perform DataGridView loading operation, then return a second scalar value for MAX(colRank).



    #new connector
    SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT Max(colRank) FROM
    (SELECT max(colRank)
    FROM
    (SELECT col1, col2,
    ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
    FROM Fabricantes
    ) AS rowNumQuery
    WHERE colRank > <i>StartRowIndex</i> AND
    colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
    ))", con2);
    int mr = (Int32) con2.ExecuteScalar();
    return mr;


    class a second SQL connector loader to test max Rows and return a scalar value. name the class testMaxRows()
    In the sql connector, use a query similar to:



     Select count(col1) DIST from fabricantes;


    Return the count to the tr variable. The last 2 lines of maxRows class should be:



    int tr = (Int32) con.ExecuteScalar();
    return tr;


    In your form designer, create a button for '<' and '>'
    Set < button to inactive. > button to active



    In the '<' ButtonOnClick() event:



    rightButton.Active = true;
    if (StartRow != '1')
    {
    StartRow -= 100;

    # your class expects a return value, so we'll initialize one
    int mr = (Int32) mySqlGridViewLoaderClass();

    if (StartRow == 1)
    {
    leftButton.Active = false;
    }
    }


    In the '>' ButtonOnClick() event:



    leftButton.Active = true;

    StartRow += 100;
    int maxRank = (Int32) mySqlGridViewLoaderClass();

    if ( maxRank >= maxColRank)
    {
    rightButton.Active = false;

    }





    share|improve this answer






























      0














      You'll need to dynamically adapt your SqlDataAdapter() call.



      First set some global variables on page/formOnLoad method



      global int startRow = '1';
      global int maxColRank = testMaxRows();


      #set left button active = false
      leftButton.Active = false;


      To do this, class your DataGridViewLoader separately to accept no parameters. Name the class mySqlGridViewLoaderClass()
      at the beginning of this class input these values:



      string MaximumRows = '100';
      string StartRowIndex = StartRow.ToString();


      In the SQL connector for this DataGridViewLoader, use a query similar to



      SELECT colRank, col1, col2
      FROM
      (SELECT col1, col2,
      ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
      FROM Fabricantes
      ) AS rowNumQuery
      WHERE colRank > <i>StartRowIndex</i> AND
      colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
      )




      Your class should perform DataGridView loading operation, then return a second scalar value for MAX(colRank).



      #new connector
      SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT Max(colRank) FROM
      (SELECT max(colRank)
      FROM
      (SELECT col1, col2,
      ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
      FROM Fabricantes
      ) AS rowNumQuery
      WHERE colRank > <i>StartRowIndex</i> AND
      colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
      ))", con2);
      int mr = (Int32) con2.ExecuteScalar();
      return mr;


      class a second SQL connector loader to test max Rows and return a scalar value. name the class testMaxRows()
      In the sql connector, use a query similar to:



       Select count(col1) DIST from fabricantes;


      Return the count to the tr variable. The last 2 lines of maxRows class should be:



      int tr = (Int32) con.ExecuteScalar();
      return tr;


      In your form designer, create a button for '<' and '>'
      Set < button to inactive. > button to active



      In the '<' ButtonOnClick() event:



      rightButton.Active = true;
      if (StartRow != '1')
      {
      StartRow -= 100;

      # your class expects a return value, so we'll initialize one
      int mr = (Int32) mySqlGridViewLoaderClass();

      if (StartRow == 1)
      {
      leftButton.Active = false;
      }
      }


      In the '>' ButtonOnClick() event:



      leftButton.Active = true;

      StartRow += 100;
      int maxRank = (Int32) mySqlGridViewLoaderClass();

      if ( maxRank >= maxColRank)
      {
      rightButton.Active = false;

      }





      share|improve this answer




























        0












        0








        0







        You'll need to dynamically adapt your SqlDataAdapter() call.



        First set some global variables on page/formOnLoad method



        global int startRow = '1';
        global int maxColRank = testMaxRows();


        #set left button active = false
        leftButton.Active = false;


        To do this, class your DataGridViewLoader separately to accept no parameters. Name the class mySqlGridViewLoaderClass()
        at the beginning of this class input these values:



        string MaximumRows = '100';
        string StartRowIndex = StartRow.ToString();


        In the SQL connector for this DataGridViewLoader, use a query similar to



        SELECT colRank, col1, col2
        FROM
        (SELECT col1, col2,
        ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
        FROM Fabricantes
        ) AS rowNumQuery
        WHERE colRank > <i>StartRowIndex</i> AND
        colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
        )




        Your class should perform DataGridView loading operation, then return a second scalar value for MAX(colRank).



        #new connector
        SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT Max(colRank) FROM
        (SELECT max(colRank)
        FROM
        (SELECT col1, col2,
        ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
        FROM Fabricantes
        ) AS rowNumQuery
        WHERE colRank > <i>StartRowIndex</i> AND
        colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
        ))", con2);
        int mr = (Int32) con2.ExecuteScalar();
        return mr;


        class a second SQL connector loader to test max Rows and return a scalar value. name the class testMaxRows()
        In the sql connector, use a query similar to:



         Select count(col1) DIST from fabricantes;


        Return the count to the tr variable. The last 2 lines of maxRows class should be:



        int tr = (Int32) con.ExecuteScalar();
        return tr;


        In your form designer, create a button for '<' and '>'
        Set < button to inactive. > button to active



        In the '<' ButtonOnClick() event:



        rightButton.Active = true;
        if (StartRow != '1')
        {
        StartRow -= 100;

        # your class expects a return value, so we'll initialize one
        int mr = (Int32) mySqlGridViewLoaderClass();

        if (StartRow == 1)
        {
        leftButton.Active = false;
        }
        }


        In the '>' ButtonOnClick() event:



        leftButton.Active = true;

        StartRow += 100;
        int maxRank = (Int32) mySqlGridViewLoaderClass();

        if ( maxRank >= maxColRank)
        {
        rightButton.Active = false;

        }





        share|improve this answer















        You'll need to dynamically adapt your SqlDataAdapter() call.



        First set some global variables on page/formOnLoad method



        global int startRow = '1';
        global int maxColRank = testMaxRows();


        #set left button active = false
        leftButton.Active = false;


        To do this, class your DataGridViewLoader separately to accept no parameters. Name the class mySqlGridViewLoaderClass()
        at the beginning of this class input these values:



        string MaximumRows = '100';
        string StartRowIndex = StartRow.ToString();


        In the SQL connector for this DataGridViewLoader, use a query similar to



        SELECT colRank, col1, col2
        FROM
        (SELECT col1, col2,
        ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
        FROM Fabricantes
        ) AS rowNumQuery
        WHERE colRank > <i>StartRowIndex</i> AND
        colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
        )




        Your class should perform DataGridView loading operation, then return a second scalar value for MAX(colRank).



        #new connector
        SqlDataAdapter daFabricantes = new SqlDataAdapter("SELECT Max(colRank) FROM
        (SELECT max(colRank)
        FROM
        (SELECT col1, col2,
        ROW_NUMBER() OVER(ORDER BY col2 DESC) AS colRank
        FROM Fabricantes
        ) AS rowNumQuery
        WHERE colRank > <i>StartRowIndex</i> AND
        colRank <= (<i>StartRowIndex</i> + <i>MaximumRows</i>
        ))", con2);
        int mr = (Int32) con2.ExecuteScalar();
        return mr;


        class a second SQL connector loader to test max Rows and return a scalar value. name the class testMaxRows()
        In the sql connector, use a query similar to:



         Select count(col1) DIST from fabricantes;


        Return the count to the tr variable. The last 2 lines of maxRows class should be:



        int tr = (Int32) con.ExecuteScalar();
        return tr;


        In your form designer, create a button for '<' and '>'
        Set < button to inactive. > button to active



        In the '<' ButtonOnClick() event:



        rightButton.Active = true;
        if (StartRow != '1')
        {
        StartRow -= 100;

        # your class expects a return value, so we'll initialize one
        int mr = (Int32) mySqlGridViewLoaderClass();

        if (StartRow == 1)
        {
        leftButton.Active = false;
        }
        }


        In the '>' ButtonOnClick() event:



        leftButton.Active = true;

        StartRow += 100;
        int maxRank = (Int32) mySqlGridViewLoaderClass();

        if ( maxRank >= maxColRank)
        {
        rightButton.Active = false;

        }






        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited Nov 23 '18 at 17:21

























        answered Nov 23 '18 at 17:13









        RickMadiganRickMadigan

        192




        192
































            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53449116%2fbutton-to-load-more-data-to-datagridview-more-than-20000-register-c-sharp%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Wiesbaden

            Marschland

            Dieringhausen