/************************************************************************/ /* アクセサ */ /************************************************************************/ /// <summary> /// メンバー情報の設定 /// </summary> /// <param name="iMemberInfo">メンバー情報</param> public void SetMemberInfo(MemberManager.SMemberInfo iMemberInfo) { //保持 mUseMemberInfo = iMemberInfo; //テキスト系設定 MemberNoTextBlock.Text = string.Format("No.{0:D3}", iMemberInfo.mID + 1); MemberNameTextBlock.Text = iMemberInfo.mName; //アイコン設定 bool set_Valid_Use_Character_ID_Flg = (iMemberInfo.mDefaultCharacterID != -1); if (set_Valid_Use_Character_ID_Flg) { try { UseCharacterImage.Source = PresetManager.GetInstance().GetCharacterInfo(iMemberInfo.mDefaultCharacterID).mIconImage; } catch (System.Exception) { set_Valid_Use_Character_ID_Flg = false; } } if (!set_Valid_Use_Character_ID_Flg) { UseCharacterImage.Source = PresetManager.GetInstance().GetUnknownCharacterIcon(); } }
//============================================================================ //! メンバーの追加ボタンが押された時の処理 private void _ClickAddMember(object iSender, RoutedEventArgs iArgs) { //無かった場合はゲームプリセットを選択させる var window = new MemberAddWindow(); //追加ボタンが押されたときの重複チェック window.AddButton.Click += (iClickSender, iClickArgs) => { //既に名前がある場合は無効 string name = window.MemberNameTextBox.Text; foreach (var iInfo in MemberManager.GetInstance().GetMemberList()) { if (name.Length > 14) { iClickArgs.Handled = true; SystemUtility.DisplayErrorDialog("メンバー名は14文字以内で入力してください"); return; } else if (iInfo.mName == name) { iClickArgs.Handled = true; string txt = string.Format("既に「{0}」という名前は存在します\n別の名前にして下さい", name); SystemUtility.DisplayErrorDialog(txt); break; } } }; window.SettingCallback(); //追加が押されて全ての条件を満たした時に追加 window.AddButton.Click += (iClickSender, iClickArgs) => { //追加 var info = new MemberManager.SMemberInfo(); info.mName = window.MemberNameTextBox.Text; info.mDefaultCharacterID = window.GetSelectCharacterIndex(); MemberManager.GetInstance().AddMember(info); //メンバーリストの更新 _RefreshMemberList(); MemberScrollViewer.ScrollToEnd(); }; window.ShowDialog(); }