为了账号安全,请及时绑定邮箱和手机立即绑定

以编程方式更改 StartupUri

以编程方式更改 StartupUri

C#
弑天下 2022-01-09 16:22:48
我有两个窗口,并且取决于我希望显示一个窗口的条件,否则我希望显示另一个窗口。这是我到目前为止所尝试的。private void Application_Startup(object sender, StartupEventArgs e){    AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);    if (!string.IsNullOrEmpty(Settings.Default.CurrentEmailAddress) && !string.IsNullOrEmpty(Settings.Default.CurrentPassword))    {        StartupUri = new Uri(@"C:\Users\User1\Desktop\FoodExpiryWC\FoodExpiry\FoodExpiry\Views\UserSection\WelcomeScreen.xaml", UriKind.Relative);    }    else    {        StartupUri = new Uri(@"C:\Users\User1\Desktop\FoodExpiryWC\FoodExpiry\FoodExpiry\Views\RegisterViews\MainWindow.xaml");    }}但是,我不断收到两个不同的错误。当我使用这条线时StartupUri = new Uri(@"C:\Users\User1\Desktop\FoodExpiryWC\FoodExpiry\FoodExpiry\Views\UserSection\WelcomeScreen.xaml", UriKind.Relative);我收到以下错误当我使用这条线时StartupUri = new Uri(@"C:\Users\User1\Desktop\FoodExpiryWC\FoodExpiry\FoodExpiry\Views\RegisterViews\MainWindow.xaml");我收到以下错误他们无论如何我可以解决这个问题吗?
查看完整描述

2 回答

?
紫衣仙女

TA贡献1839条经验 获得超15个赞

在@Jackdaw 的启发下,我想出了一个解决方案并意识到我的错误。


我使用的是绝对路径,IDE 不喜欢它。然后我将路径更改为以下


StartupUri = new Uri(@"./Views/UserSection/WelcomeScreen.xaml", UriKind.Relative);

欢迎屏幕构造函数采用字符串参数,因此我创建了第二个没有参数的构造函数并使用了 Settings.Default.CurrentEmailAddress


public WelcomeScreen()

        {

            InitializeComponent();

            this.DataContext = new WelcomeScreenViewModel(Settings.Default.CurrentEmailAddress);

        }


查看完整回答
反对 回复 2022-01-09
?
绝地无双

TA贡献1946条经验 获得超4个赞

尝试为第二个StartupUri指定UriKind.Relative并使用如下相对路径:


if (!string.IsNullOrEmpty(Settings.Default.CurrentEmailAddress) && !string.IsNullOrEmpty(Settings.Default.CurrentPassword))

{

  StartupUri = new Uri(@"\FoodExpiry\FoodExpiry\Views\UserSection\WelcomeScreen.xaml", UriKind.Relative);

}

else

{

  StartupUri = new Uri(@"\FoodExpiry\FoodExpiry\Views\RegisterViews\MainWindow.xaml", UriKind.Relative);

}


查看完整回答
反对 回复 2022-01-09
  • 2 回答
  • 0 关注
  • 204 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信