How to add a mesh to a SkinnedMeshRenderer

Dammit…
Im trying to follow(somehow) the unity demo DressingRoom, where the model is customized, combining different meshs to the same bone “base”…

Im getting spanked in this…

Using the model “female” of this sample, what Im trying to do, in the most simple way possible, just to get a bit more confiddent in the subject, is:
#save all SkinnedMeshRenderer in the GameObject(the one generated if you drop the model in the scene)
#save the meshs of each SkinnedMeshRenderer
#delete all SkinnedMeshRenderer in the GameObject(the one generated if you drop the model in the scene)…To do this, Im deleting the SkinnedMeshRenderer.gameObject

At this point, I sussefully have just a GameObject with the bone trafos hierarchy

Now, where I get spanked, is the part where I simply trying to add back one SkinnedMeshRenderer and its mesh back to the GameObject, I sussefully add a SkinnedMeshRenderer to it, but I cant find a way to add a mesh to this same goddam SkinnedMeshRenderer…

 List<SkinnedMeshRenderer> skinnedMRenderers = new List<SkinnedMeshRenderer>();
                List<Mesh> smrMeshs = new List<Mesh>();

                int howManyMeshsAffectedByBones = 0;
                foreach( SkinnedMeshRenderer smr in skinnedMeshHolder.GetComponentsInChildren<SkinnedMeshRenderer>() )
                {

                    smrMeshs.Add(smr.sharedMesh);
                    Debugar.Log(smr.sharedMesh.name);

                    Destroy(smr.gameObject);
                    skinnedMRenderers.Add(smr);

                    ++howManyMeshsAffectedByBones;
                }
                Debugar.Log(howManyMeshsAffectedByBones);

                //now gameObject have only bone trafos, and Im holding its smr and meshs

                //test, try add back pants-2:
                int it = 0;
                foreach (SkinnedMeshRenderer smr in skinnedMRenderers)
                {
                    Debugar.Log(smr.name);
                    if (smr.name == "pants-2")
                    {
                        //adding a gameObject, because I believe its how it was by default:
                        GameObject smrGO = new GameObject();
                        SkinnedMeshRenderer smrToAdd = smrGO.AddComponent<SkinnedMeshRenderer>();
                        smrToAdd = smr;

                        Debugar.Log( "adding this mesh: " + smrMeshs[it] );//THE MESH NAME IS CORRECT

                        smrToAdd.sharedMesh = new Mesh();
                        //smrToAdd.sharedMesh = smrMeshs[it];//DOESNT WORK
                        //try a hack:
                        CombineInstance[] meshToCreate = new CombineInstance[2];
                            meshToCreate[0].mesh = smrMeshs[it];
                            meshToCreate[1].mesh = smrMeshs[it];
                            smrToAdd.sharedMesh.CombineMeshes(meshToCreate, true, false);//DOESNT WORK EITHER

                        //set this go to be child of the skinnedMeshHolder:
                            smrGO.transform.parent = skinnedMeshHolder.transform;
                    }

                    ++it;
                }

Thats it…Im very noob to all this(started today)

Now, since Im doing this to get a better grasp of all this, can someone tell me if I manage to make this work, will those SMR and its meshes get animated correctly?

This is a very blurried area to me…I get that each mech have its per bone weights, and that each SMR get its bone trafos, but I dont have a clue wheres the link between those SMR bones and the bone trafo hierarchy(displayed in the GameObject in the scene(in the editor)) and how animation affect those( i know how bone animation work, Im confuse about this link: animation-trafo hierarchy-smr bones)

Sorry if this is not correct place to ask, Im dont come here often, and my english is poor =D

SO…anyone, please? Sorry for bumping.