gpt4 book ai didi

wpf - App OnStartup 永远不会被调用

转载 作者:行者123 更新时间:2023-12-04 04:58:00 28 4
gpt4 key购买 nike

非常简单的问题,但我没有取得任何进展,所以我想我应该问...

我正在编写一个小型 WPF 原型(prototype),我在其中放置了引导
我认为它所属的逻辑:在(被覆盖的)App.OnStartup 方法中。

问题是该方法永远不会被调用,我不知道为什么!

我浏览了一些,发现有人说 <Application> App.xaml 中的标记必须在“App”属性中指定实现类 (x:Class)。我把它从 x:Class="Application"x:Class="App"但这没有任何区别。

我在这里想念什么?

编辑:
这是代码...

XAML:

<Application
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="App"
ShutdownMode="OnMainWindowClose"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Recources\Brushes\Brushes.xaml"/>
<ResourceDictionary Source="Recources\Templates\Templates.xaml"/>
<ResourceDictionary Source="Recources\Styles\GVSStyles.xaml"/>
<ResourceDictionary Source="Recources\Styles\TimePicker.xaml"/>
<ResourceDictionary Source="Recources\Icons\GVSIcons.xaml"/>
<ResourceDictionary Source="Recources\Icons\BottleIcon.xaml"/>
<ResourceDictionary Source="Recources\Styles\BusyAnimationStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>

后面的代码...
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);

// lower default framerate from 60 to 20 to save CPU ...
Timeline.DesiredFrameRateProperty.OverrideMetadata(
typeof(Timeline),
new FrameworkPropertyMetadata { DefaultValue = 20 });

hookUpViews();
connectToServer();
}

最佳答案

编辑:您的 XAML 似乎与后面的代码无关,x:Class需要包含您的 App 类的命名空间。例如MyWpfApplication.App .

除非您发布一些代码,否则您只会胡思乱想,这是我的:您没有正确覆盖该方法,而是使用具有相同名称和签名的方法将其隐藏。

这是一个工作覆盖应该是什么样子:

protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
MessageBox.Show("!");
}

按照建议,您可以使用 Startup 事件,但您不必进一步 StartupUri 将在覆盖中的代码之外执行。

关于wpf - App OnStartup 永远不会被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6442254/

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