The problem is almost certainly due to this line:
Form1 frm = new Form1();
Which create a new instance of yoru form, which is not connected to the one the user is looking at, and is never even displayed, according to the code you show us. That won;t work - you need to talk to the actual instance the user is working with.
Have a look at these, one of them will fit your circumstances.
The form that creates an instance of another:
MyForm mf = new MyForm();
mf.Show();
Is the "parent", the other form is the "child".
(This doesn't imply any formal MDI relationship)
Transferring information between two forms, Part 1: Parent to Child[
^]
Transferring information between two forms, Part 2: Child to Parent[
^]
Transferring information between two forms, Part 3: Child to Child[
^]