You are sending DataGridview reference to the method so if you modified to argument in the caller method that will reflect in your called method. If you don't want to change the argument in caller method you need to create one copy of the DataGridView and you need to send new copy as argument.
Pass by Value in C# - Stack Overflow[
^]
But here better to send what ever data you want instead of complete DataGridView.
Still if you want to send DataGridview as parameter you can finding cloning DataGridView
here.