WPF 应用程序不再显示主窗口

2024-01-11

我的应用程序构建并运行良好。我在任务栏中看到一个图标,显示该窗口存在,但它从未显示。我从 app.xaml 调用 StartupUri="MainWindow.Xaml" ,而 mainwindow 仅包含一些函数和 InitializeComponent()。调试时,它会运行直到窗口应该打开,然后停止,我无法再单步执行任何操作。我什至不知道调试器在哪里,因为黄色突出显示消失了并且代码没有改变。我认为它此时正在等待用户交互,因为它认为窗口已成功打开。有任何想法吗?

public partial class App : Application
{
    private void Application_Startup(object sender, StartupEventArgs e)
    {
        foreach (string s in TZClock.Properties.Settings.Default.Clocks)
        {
            // x, y, currentCity, color
            Globals.state = s.Split(',');

            MainWindow NewWindow = new MainWindow();
            NewWindow.Top = double.Parse(Globals.state[0]);
            NewWindow.Left = double.Parse(Globals.state[1]);
            Globals.currentCity = Globals.state[2];
            Globals.color = Globals.state[3];
            NewWindow.Show();
        }
    }
}
<Window x:Class="TZClock.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:p="clr-namespace:TZClock.Properties"
            WindowStartupLocation="Manual" Loaded="Window_Loaded"
            Height="155" Width="271" 
            Left="{Binding Source={x:Static p:Settings.Default}, Path=Left, Mode=TwoWay}" 
            Top="{Binding Source={x:Static p:Settings.Default}, Path=Top, Mode=TwoWay}">

    <Grid Height="120" Width="258" Margin="0,0,0,0" >
        <Rectangle Opacity=".75" Fill="{Binding Source={x:Static p:Settings.Default}, Path=Color, Mode=TwoWay}" RadiusX="8" RadiusY="8"
                   Stroke="#FF94B494" StrokeThickness="5" Margin="0,0,12,12"></Rectangle>
        <ComboBox Name="DropDown" Width="139" Height="23" HorizontalAlignment="Left" VerticalAlignment="Top" 
                  Margin="51,13,0,0"  VerticalContentAlignment="Center" HorizontalContentAlignment="Center"
                  SelectionChanged="DropDown_SelectionChanged" />
    </Grid>
</Window>
public partial class MainWindow : Window
{
    public MainWindow()
    {
        this.Uid = Globals.num.ToString();
        InitializeComponent();
        LoadCityDictionary();
        displayTimeZoneInfo();
        scheduleTimer();
    }

    private void scheduleTimer()
    {
        // http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatchertimer.aspx
        // schedule a new, timed thread to refresh time (will not block the UI Thread)
        DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
        dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
        dispatcherTimer.Interval = new TimeSpan(0, 0, 1);
        dispatcherTimer.Start();
    }

    private void dispatcherTimer_Tick(object sender, EventArgs e)
    {
        // http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatchertimer.aspx
        // refresh time label by current timezone
        Time.Content = (TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.Now, currentZone)).ToLongTimeString();
        Date.Content = (TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.Now, currentZone)).ToShortDateString();

        // Forcing the CommandManager to raise the RequerySuggested event
        CommandManager.InvalidateRequerySuggested();
    }

    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        this.DropDown.SelectedValue = Globals.currentCity;
    }

    private void DropDown_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        Globals.currentCity = DropDown.SelectedItem.ToString();
        TimeZoneInfo tz = TimeZoneInfo.FindSystemTimeZoneById(d[Globals.currentCity]);

        Time.Content = TimeZoneInfo.ConvertTime(DateTime.Now, tz).ToLongTimeString();
        Date.Content = TimeZoneInfo.ConvertTime(DateTime.Now, tz).ToShortDateString();
        Location.Content = (tz.IsDaylightSavingTime(TimeZoneInfo.ConvertTime(DateTime.Now, tz)) ? tz.DaylightName : tz.Id);

        currentZone = tz.Id;

        Properties.Settings.Default.CurrentCity = Globals.currentCity;
        Properties.Settings.Default.Save();
    }
}

我怀疑窗口在那里,但在屏幕范围之外...检查您分配给的值Top and Left

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WPF 应用程序不再显示主窗口 的相关文章

随机推荐

  • Visual Studio“在浏览器中查看”特定页面的快捷方式?

    我们正在使用视觉工作室2008并想知道是否有办法为 创建 键盘或工具栏 快捷方式在浏览器中查看 命令 但是与特定页面来自特定 已加载 项目 我们总是从 Project x 的 Somepage aspx 开始测试 调试我们的应用程序 我想创
  • 不使用过滤函数删除 RDD 中的第一个元素

    我从一个文件构建了一个 RDD 其中 RDD 中的每个元素都是文件中由分隔符分隔的部分 val inputRDD1 RDD String Long myUtilities paragraphFile spark path1 coalesce
  • yii2 路由 - 将参数传递给规则中的路由

    当用户访问domain page 我需要将它们路由到controller action 100 我不想通过 URL 传递任何参数 但想将其添加到 url 规则中 我将下面的代码添加到我的配置文件中 urlManager gt rules g
  • bootstrap下拉顶级导航制作可点击的链接

    我正在使用 bootstrap wordpress 主题创建一个带有下拉菜单的菜单 但是顶级链接仅在单击时显示下拉菜单 并且单击时不会转到页面本身 因此 在 www thermoryuk co uk wp 中 当我单击 地板 时 我想转到地
  • 为什么解释器模式很糟糕?

    In Steve Yegge 对设计模式的评论 http steve yegge googlepages com ten great books 他将解释器模式称为 笑话 他继续谈论编译器的看法如何改变 但解释语言仍然如何继续 尽管我看不出
  • 正则表达式中的捕获组[重复]

    这个问题在这里已经有答案了 我正在探索在正则表达式中捕获组 但我对缺乏相关文档感到困惑 例如 谁能告诉我两个正则表达式之间的区别 madhur and madhur 就我而言 第二个建议匹配madhur字符串中零次或一次 第一个与第二个有什
  • Python/Pandas 计算 Ichimoku 图表组件

    我有 Pandas DataFrame 对象 其中包含日期 开盘价 收盘价 每日最低股票数据和最高股票数据 我想计算的组成部分Ichimoku https www investopedia com terms i ichimoku clou
  • 如何在 Ubuntu 18.04 上安装或升级到 sqlite 3.33.0?

    我目前正在运行带有 SQLite3 的 Ubuntu 18 04 SQLite 3 的版本为 3 22 0 我需要将其升级到版本 3 33 0 以利用可用的新功能 如果我使用 apt get 删除并重新安装 SQLite3 它只会重新安装
  • 如何在 woocommerce 中获取产品的特色图片

    请告诉我哪里出错了 产品特色图片未显示 args array post type gt product posts per page gt 80 product cat gt profiler orderby gt rand loop ne
  • 如何在 Enterprise Architect 中自动生成 HTML 输出

    Enterprise Architect 有一种方法可以生成 HTML RTF 等格式的文档 您可以发布它 但您必须使用其 GUI 手动执行此操作 当您的 eap 文件位于 CVS Subversion 服务器中时 拥有一个每天检查最新版本
  • 将固定大小的 ImageView 在父 ConstraintLayout 中水平居中

    我有一个相当简单的布局 AConstraintLayout占满整个屏幕 一大片CardView在顶部有一个ImageView那是一半CardView和上面的一半 实际上不是一半 但你明白了 然而 有两个问题 ImageView粘在父级的左侧
  • dplyr 连接 A 列或 B 列

    如何使用 dplyrs 连接函数在 R 中通过 OR 语句连接 2 个表 例如 使用以下密钥将 df1 加入到 df2 上 df1 ColumnA df2 ColumnA 或 df1 ColumnA df2 ColumnB library
  • Boost::GIL 如何将图像以 JPEG 或 PNG 格式保存到 char* 中?

    所以我在保存到文件时看到了很多示例 但我想知道是否可以保存到 char 或字符串而不是文件中 也就是说将其保存在内存中 boost 本身似乎没有任何东西可以促进这一点 所有 I O 似乎都基于提供文件名 不过好像还有延伸here http
  • 在可编辑模式下使用单独的源目录安装包

    情况 这是示例包的结构 tree Foo Foo setup py src bar py init py 包的名称应为foo但是包的源文件放置在src folder 文件的内容是 设置 py from setuptools import s
  • 隐藏 ASP.NET MVC5 中某些角色的链接

    所以这听起来可能是一个愚蠢的问题 但如何仅为管理员用户显示链接 假设普通用户看到以下链接 主页 关于 联系我们 管理员用户会看到以下链接 主页 关于 联系 管理员 我尝试限制控制器并链接菜单上的控制器 但它仍然向所有人显示链接 只是不允许除
  • std::shared_mutex 和 std::shared_lock 是读者更喜欢还是作者更喜欢?

    在读写锁的实现中 我们可以利用std shared mutex with std shared lock and std lock guard or std unique lock Question gt 这个新专题是作者还是读者更喜欢 根
  • android中是否需要关闭参数/参数InputStream?

    所有流和 bufferedReader 都需要关闭我的问题是如果 流和 bufferedReader 位于方法参数 参数内 也需要关闭吗 正常代码示例 InputStream i entity getContent i close 问 如果
  • 如何将代码从 O(n^2) 优化为 nlog(n)

    给定一个数字数组 以产生最大值的方式排列它们 例如 如果给定数字为 54 546 548 60 则排列 6054854654 给出最大值 如果给定的数字是 1 34 3 98 9 76 45 4 则排列 998764543431 给出最大值
  • 从数据库执行代码

    我有一个 PHP 代码存储在数据库中 我需要在检索时执行它 但我的代码是HTML和PHP的混合体 主要用在echo 看起来像我的代码的示例 echo Some Text var something more text anotherVar
  • WPF 应用程序不再显示主窗口

    我的应用程序构建并运行良好 我在任务栏中看到一个图标 显示该窗口存在 但它从未显示 我从 app xaml 调用 StartupUri MainWindow Xaml 而 mainwindow 仅包含一些函数和 InitializeComp