gpt4 book ai didi

c# - 无法转换类型的对象

转载 作者:太空宇宙 更新时间:2023-11-03 22:00:32 25 4
gpt4 key购买 nike

在我的 wpf 应用程序中尝试将字符串从一个窗口发送到另一个窗口时出错:

Unable to cast object of type 'WpfApplication4.LoginWindow' to type 'WpfApplication4.MainWindow'.

在我的登录窗口中,错误出现在这一行:

((MainWindow)Application.Current.MainWindow).StudentID = UserAuthenticationID;

在我的主窗口中,我要测试这个:

    public string StudentId { get; set; }
void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
label1.Content = StudentID;
}

我做错了什么?

编辑:

到目前为止没有答案有意义,这将是由于我的问题晦涩难懂,我创建了一个 wpf 应用程序并且我有两个窗口 MainWindow.xaml 和 LoginWindow.xaml。

我想在身份验证后从登录窗口向主窗口传递一个字符串(学号)。

我认为上面的方法是如何做到的,正如我所读:((MainWindow)Application.Current.MainWindow).StudentID 说我打算在哪里使用字符串 UserAuthenticationID 发送到?

然后在 MainWindow.xaml 中我得到字符串 UserAuthenticationID 并设置它,然后我将标签内容分配给这个公共(public)字符串?

最佳答案

假设您从主窗口创建了登录窗口。如果您需要从您的登录窗口引用您的主窗口,那么在您构建它时将主窗口引用传递给您的登录窗口。例如

void MainWindow_Loaded(object sender, RoutedEventArgs e) {
LoginWindow login = new LoginWindow(this);
login.ShowDialog();
}

class LoginWindow : Window {
MainWindow app_window;
public LoginWindow(MainWindow app_window) {
Owner = app_window;
this->app_window = app_window;
}
}

关于c# - 无法转换类型的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10319735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com