private void UserDataSaveButtonClick(object sender, RoutedEventArgs e) { var parentWindow = GetWindow((System.Windows.Controls.Button)sender); if (parentWindow?.Tag == null) { return; } var userName = parentWindow.Tag.ToString(); var udiw = (UserDataInputWindow)parentWindow; var data = udiw.GetUserData(this.UserDataPropertyName); // アプリ中に保存 if (this.UserData.ContainsKey(userName)) { this.UserData[userName] = data; } else { this.UserData.Add(userName, data); } var userItemsName = new List <string>(); userItemsName.AddRange(this.UserDataPropertyName.Select(item => userName + item + "=")); // ファイル中に保存 // これはUserDataInputWindowがFileControllerとかかわっていることになる? FileController.SaveUserInfo( userName, data, this.UserDataPropertyName, userItemsName.ToArray()); this.UpdateUserDataField(); udiw.Close(); }