Using UI canvas for Dynamic room list

hi guys,

i have searched the forum and could not find the answer to my problem.
How can you create a UI Toggle in 4.6 that dynamically updates when someone creates a room in multiplier game.
similar to this:

void OnGUI () {
        GUILayout.BeginArea(new Rect(0, 10, 700, 500));
        scrollPos = GUILayout.BeginScrollView(scrollPos);

        foreach (RoomInfo game in PhotonNetwork.GetRoomList()){
            if (GUILayout.Button ("Room")){

            }
        }
        GUILayout.EndScrollView();
        GUILayout.EndArea();
    }

All I can think is Instantiate and Destroy but I guess this is not a good way in doing it.