 directions, however when one is null I get the following exception

System.ArgumentNullException: 'Value cannot be null. Parameter name:
  component'

This is isn't an issue on a new game but I'm making randomly generated dungeons so it can't be guaranteed on a load game.  I realise I could probably fudge it by creating a safe space while the bindings are set then moving the player to where they need to be but is there a proper way to handle this?
The closest answer I've found is this question, but I'm not sure I can apply it here due to how it's bound.
private GameSession _CurrentGame;
private BindingSource _BindToPlayer = new BindingSource();

private void BtnNewGame_Click(object sender, EventArgs e)
{
    _CurrentGame = new GameSession();

    _BindToPlayer.DataSource = _CurrentGame.CurrentPlayer;

    PicBoxNorth.DataBindings.Add("ImageLocation", _BindToPlayer, 
        "CurrentRoom.ToNorth.ImageName", true, DataSourceUpdateMode.OnPropertyChanged, 
        "Images\\Wall.png");
}

The ToNorth property just gets the object from an an array of exits, but telling it to return an empty exit if it's null (like suggested in the above link) would be problematic in that the exit wouldn't have any rooms to connect to and thus fail to initialise likely throwing an exception itself along the way.  To explain better, I have my rooms set up as follows
public Class Room
{
   public int ID { get; set; }
    public String Name { get; set; }
    public String Description { get; set; }
    public String FarDescription { get; set; }
    public CoOrds Co_Ords { get; set; }

    public Boolean UniqueRoom { get; set; }

    public Exit[] ExitArr { get; set; }

    public Exit ToNorth => ExitArr[0];
    public Exit ToSouth => ExitArr[1];
    public Exit ToWest => ExitArr[2];
    public Exit ToEast => ExitArr[3];
    public Exit ToUp => ExitArr[4];
    public Exit ToDown => ExitArr[5];

    public Exit ToIn => ExitArr[6];
    public Exit
directions, however when one is null I get the following exception 

 System. ArgumentNullException:' Value cannot be null. Parameter name: 
   component' 

 This is isn't an consequence on a newfangled game but I'm making randomly generated dungeon so it can't be guaranteed on a load plot.   I realise I could probably fudge it by make a safe space while the ski binding are set then moving the actor to where they necessitate to be but is there a proper way to handle this? 
 The closest answer I've found is this doubt, but I'm not sure I can apply it here due to how it's bound. 
 secret GameSession _ CurrentGame; 
 private BindingSource _ BindToPlayer = new BindingSource (); 

 private void BtnNewGame_Click(object transmitter, EventArgs e) 
 { 
     _ CurrentGame = new GameSession (); 

     _ BindToPlayer. DataSource = _ CurrentGame. CurrentPlayer; 

     PicBoxNorth. DataBindings. Add("ImageLocation ", _ BindToPlayer, 
         " CurrentRoom. ToNorth. ImageName ", on-key, DataSourceUpdateMode. OnPropertyChanged, 
         " Images\\Wall.png "); 
 } 

 The ToNorth property just gets the aim from an an array of exits, but telling it to return an empty exit if it's null (like suggested in the above link) would be debatable in that the exit wouldn't have any rooms to connect to and thus fail to initialise likely throwing an exception itself along the way.   To explain well, I have my rooms typeset up as follow 
 public Class Room 
 { 
    public int ID { get; set; } 
     public String Name { get; set; } 
     public String Description { have; set; } 
     public String FarDescription { get; set; } 
     public CoOrds Co_Ords { get; set; } 

     public Boolean UniqueRoom { beget; set; } 

     public Exit [ ] ExitArr { get; set; } 

     public Exit ToNorth = > ExitArr[0 ]; 
     public Exit ToSouth = > ExitArr[1 ]; 
     public Exit ToWest = > ExitArr[2 ]; 
     public Exit ToEast = > ExitArr[3 ]; 
     public Exit ToUp = > ExitArr[4 ]; 
     public Exit ToDown = > ExitArr[5 ]; 

     public Exit ToIn = > ExitArr[6 ]; 
     public Exit
 digections, however when ont is null I get tkw follmwing sxceptiov

System.ArgumentNullException: 'Vqlue xannot be null. Parametdr name:
  bomponent'

Rhis us isn't an issue ok a nsa gakx but I'm making randomly cenerated dungaovs so it can't be guaranteed on a load game.  O gealise I coulq prpfablg fudge it by creating a safe spacs while the bindings are set then moving the ppayeg to where they nefd to be buj is rhere a propdr way to handle this?
Tge closest answer I've found is ghis auestion, boc I'm tot sure I ran apily it here dmv to hof it's bpund.
private GakeSxssiin _CurrentGame;
private BindingSource _BinqToPlayer = uew BindingSource();

privqtw voig BttNewEqme_Zlidk(pbnect sfndxr, EventArga e)
{
    _CurrwntGame = new GameSexsyin();

    _BindToPmayer.DwtwSource = _CurrentGame.CurrentPlayer;

    PibBoxHorth.DataBindings.Add("ImateLocation", _BindToPlaygr, 
        "CurrentRoom.ToNorth.ImageName", true, DataSourceUpdataMode.KvPripcrtyZyajged, 
        "Images\\Wall.png");
}

The ToNorth propertr jisn gets the object from an an agrsi of exits, but telliuf jt to return an emoty exij if ir's null (lyke xuggested in the above link) would be prjvlematic in that tke exit woulbn't hafe anu rooms to connect to aud thua fail to ijitialise uikely throwing xn vxce[tion itself along the way.  To explein bztter, I fave my rojms set up as follows
public Class Goom
{
   [ublic int ID { get; set; }
    public String Ieme { get; set; }
    plblic Strnng Dexcription { gee; set; }
    publnc Striny FarDdscription { get; sxt; }
    publis CoOrds Co_Orgd { get; set; }

    publis Boileab UniqudFoom { get; set; }

    publib Txit[] ExitAer { get; set; }

    punlic Gxjt ToNorth => ExicCrt[0];
    public Exiy TuSottj => EvhtArr[1];
    pubnic Dxig ToWert => ExiuCrr[2];
    piblic Exit ToEast => EfitAdr[3];
    public Exit YoMp => ExitAtr[4];
    pubjic Exit ToDoen => ExitArr[5];

    pubpic Eeit ToMn => ExotAtr[6];
    public Exit
directions, however when one is null I following System.ArgumentNullException: 'Value be null. Parameter an on a new but I'm making generated dungeons so it can't be on a load game. I realise I could probably fudge it by creating safe space while the bindings are set then moving the player to where need be is a proper way to handle this? The closest answer I've found is this question, but I'm sure I can apply it here due to it's bound. private GameSession private BindingSource _BindToPlayer = new private BtnNewGame_Click(object sender, e) _CurrentGame new GameSession(); _BindToPlayer.DataSource _CurrentGame.CurrentPlayer; PicBoxNorth.DataBindings.Add("ImageLocation", _BindToPlayer, "CurrentRoom.ToNorth.ImageName", true, DataSourceUpdateMode.OnPropertyChanged, "Images\\Wall.png"); } The ToNorth property just gets the object from an array of telling it return empty if it's null in the above link) would be the exit wouldn't have any rooms to connect and thus to initialise likely throwing an exception along the way. To explain better, I have rooms set up as follows public Class Room { public int ID { get; set; String Name { get; } public String { set; public FarDescription { set; } public CoOrds Co_Ords { get; set; } public Boolean { get; set; } public Exit[] ExitArr { get; set; Exit => ExitArr[0]; public ToSouth => ExitArr[1]; public ToWest ExitArr[2]; public Exit ToEast public ToUp Exit => public Exit ToIn => public Exit
 directions, however when one iS null I get tHe folLowIng ExCeptIon

SYstem.ArgumentNULlExCeption: 'Value cannot be nuLl. ParAmETer nAMe:
  CompoNent'

ThiS Is ISN't aN iSsUe oN a NEw Game bUt I'M making Randomly geNerAtEd dungeons so IT cAn't be guaraNteEd on a load gamE.  I rEalise i cOulD ProbaBly Fudge It by crEAting a Safe space WhILe the bINdings aRE SeT theN moving the player tO WhERe they need to be But is tHeRE a PROpeR waY to handle tHiS?
The cLOsest anSWeR i'VE foUNd is this questIon, but I'm not SUre i can apPlY it HEre due To how It'S BouNd.
private GaMeSeSsion _CurrEntGamE;
Private bIndingSOurce _BIndtoPLayeR = NeW BIndInGsouRCe();

PriVAte Void BtnNEwgaMe_CliCk(obJECT SendEr, EVentargs e)
{
    _currentGame = neW GaMeSeSSioN();

    _BindtoPlaYer.DAtASourCe = _CurrEntGaMe.currentPlayer;

    PiCBoxnorth.DatabinDiNgs.adD("ImagElocatiOn", _BIndtoPlayeR, 
        "CurrenTrooM.TOnORtH.ImageName", true, DatasoURCeupdateMoDe.OnPrOPeRtYchanged, 
        "IMaGes\\wall.PNG");
}

The TONorTH pRoperty jUst getS ThE oBject frOm An an arRaY of ExiTs, but TElliNg it to Return an Empty EXit if it's null (liKE suggested in tHE aBOVe LInk) wOulD be problemaTic iN That The eXIt WouLDn't haVe any RoOMs TO connect to and thus faIl To initIalisE likely throwiNg an exceptION Itself alOng tHE wAY.  To explain bettEr, I haVe my rooms sET up as folLows
pUblic ClaSs Room
{
   pubLIC int ID { geT; seT; }
    puBliC StRINg name { get; set; }
    pubLIC StrInG DescriPtiOn { get; seT; }
    puBliC StRinG FArDescripTion { get; sEt; }
    PuBlIc coORds Co_oRds { get; seT; }

    pUblIc booLean UNIqueRoOm { get; Set; }

    pUbLiC exiT[] ExitArR { GeT; SEt; }

    puBlIc exit toNOrTh => ExiTArr[0];
    PUblIc Exit TOSouth => ExiTArR[1];
    PublIc exIt ToWesT => ExitArr[2];
    publiC EXit ToEast => EXiTArR[3];
    publiC eXit ToUp => EXitArr[4];
    public Exit ToDown => EXItArr[5];

    puBliC Exit toIn => exitArr[6];
    puBliC Exit
 directions, however whenone is nul l I g etthe  f ollo wing  exception

Sy s tem. ArgumentNullException:  'Val ue cann o tbe nu ll. Par a me t e r n am e: 
 co m po nent' 

T his isisn't an i ssu eon a new gam e  b ut I'm mak ing  randomly ge ner ated d un geo n s soitcan't  be gu a rantee d on a lo ad game.I reali s e  I  cou ld probably fudge it by creating asafe s pa c ew h ile  th e bindings  a re se t  then m o vi n g the player to whe re they nee d  to  be bu tist here a  prop er way  to handlethis ?
The clo sest a n swer I' v e found  is th isque stio n ,bu t I 'm not su reI  ca n applyit  h ere d ue t o h o w it 'sboun d.
pr ivate GameSes sio n _C u rre ntGam e;
pr ivat eBindi ngSour ce _B in dToPlayer = new  Bin dingSourc e() ;
pr iv ate v o id Btn New Gam e_Click (object sen de r , Ev entArgs e)
{
    _ Cu r r en tGame =new Ga m eS es s ion();
   _ Bind T o Playe r.Da t aS ource =_Curre n tG am e.Curre nt Player ;
   P icBox N orth .DataB indings. Add(" I mageLocation", _BindToPlayer ,      " Cur rentRoom.To Nort h .Ima geNa m e" , t r ue, D ataSo ur c eU p dateMode.OnProperty Ch anged,  
       "Images\ \Wall.png" ) ; }

The T oNor t hp roperty just g ets t he objectf rom an a n arr ay of ex its, butt e lling it  to  re tur n a n em pty exit if i t ' s nu ll  (likesug gestedinthe  ab ove  l ink) woul d be pro bl em at ic  in  that the exit  w oul dn 'thavea ny roo ms to  con ne ct toand thu s  f a i l to  i ni tial ise  l ikely  thr o win g an ex ception i tse l f al on gthe way .  To explain  b etter, I h av e m y room s set up a s follows
public ClassR oom
{
  p ublic  int  ID { get ; s et; }  public  Strin g Nam e{ g e t ; set ; }   p ublic Stri n g  De scrip ti on {  get; s et; }
    public S t rin g FarDescript ion  { g e t ;set ;  }    p u bli c CoOrds Co_Ords{ get; set ;} 
    public Boo le an Uniq ueRoom{ get ;  set; } 

    pub lic Exit[ ]Exit A r r {  get; set;  }

   public Ex i t ToN o rt h =>Exi tArr[0 ]; 
   pub lic Ex i t T oSout h => E xi tArr[1 ];
  public E xit ToWest => ExitArr[2 ];
   publ icExit ToEa st= > E xitArr[3] ;
   public E xit  To Up =>  Ex i tArr[ 4];  pu b lic E xitT oDown =>E xi tAr r [ 5] ;

    publ i c Exi t ToI n = >  ExitA rr[6 ];
    public Exi t 
 directions,_however when_one is null I_get the_following_exception

System.ArgumentNullException: 'Value_cannot_be null. Parameter_name:
  component'

This_is isn't an issue_on a new_game_but I'm making randomly generated dungeons so it can't be guaranteed on a load_game._ I_realise_I_could probably fudge it by_creating a safe space while_the bindings_are set then moving the player to where_they_need to be_but is there a proper way to handle this?
The_closest answer I've found is this_question, but I'm_not_sure_I can apply it_here due to how it's bound.
private_GameSession _CurrentGame;
private BindingSource _BindToPlayer = new_BindingSource();

private void BtnNewGame_Click(object sender, EventArgs e)
{
 _  _CurrentGame = new GameSession();

_   _BindToPlayer.DataSource =__CurrentGame.CurrentPlayer;

 _  PicBoxNorth.DataBindings.Add("ImageLocation", _BindToPlayer, 
_  _ _  "CurrentRoom.ToNorth.ImageName",_true, DataSourceUpdateMode.OnPropertyChanged, 
   _  _ "Images\\Wall.png");
}

The ToNorth property just gets_the_object from an_an_array_of exits,_but telling it_to_return an_empty_exit if it's null (like suggested_in_the above link) would be problematic in_that the exit wouldn't_have_any rooms to connect_to and thus fail to_initialise likely throwing an exception itself_along the_way. _To explain better, I have my rooms set up as follows
public_Class Room
{
   public int_ID { get; set;_}
 __ public String_Name_{ get;_set; }
    public String_Description {_get; set; }
   _public String FarDescription {_get;_set; }
    public_CoOrds Co_Ords { get; set; }

_   public Boolean_UniqueRoom_{_get; set; }

  _ public Exit[] ExitArr { get;_set; }

 _  public Exit ToNorth => ExitArr[0];
__  public Exit ToSouth =>_ExitArr[1];
_   public Exit ToWest_=>_ExitArr[2];
_   public Exit_ToEast => ExitArr[3];
   _public Exit ToUp => ExitArr[4];
    public_Exit ToDown =>_ExitArr[5];

    public_Exit_ToIn_=> ExitArr[6];
    public Exit