Похоже, что ваш GetInfo
работает как диалог.
Вы можете сохранить информацию в GetInfo
и получить информацию после того, как пользователь выберет закрытое.
В вашем MainWindow
private void AddClient_Click(object sender, RoutedEventArgs e)
{
GetInfo infoget = new GetInfo();
infoget.ShowDialog();
if( get.DialogResult != true ) {
return;
}
main.DataGridXAML.Items.Add(addClient);
}
In GetInfo
public partial class GetInfo : Window
{
public GetInfo()
{
InitializeComponent();
}
public class Client
{
public string name { get; set; }
public string address { get; set; }
}
// Save info in window as a property.
public Client Info { get; set; }
private void SaveBT_Click(object sender, System.EventArgs e)
{
Client addClient = new Client();
addClient.name = NameTB.Text;
addClient.address = AddressTB.Text;
Info = addClient;
DialogueResult = true;
}
}
Что не так с вашим исходным кодом? Посмотрите на комментарии ниже.
private void SaveBT_Click(object sender, System.EventArgs e)
{
// This is the problem, this main is NOT your actual instance of MainWindow which calls this GetInfo.
MainWindow main = new MainWindow();
Client addClient = new Client();
addClient.name = NameTB.Text;
addClient.address = AddressTB.Text;
main.DataGridXAML.Items.Add(addClient);
this.Close();
// After this command, main is not getting used anymore, so you get nothing in your actual MainWindow
}