You can have a class which holds the value of the controls whatever you want and maintain a global collection of that class...
ObservableCollection<employee> obj = new ObservableCollection<employee>()
where Employee is your defined class.
Now on button click , you can add the new row like this
Private void AddRows(sender,args){
obj.Add(new Employee() {.... });
datagrid1.itemsource=obj;
}