1

プログラム名を Cyan Pembuat Soal(Cyan Question Maker) にしたい このコードに起動イベントを追加します。

using System;
using System.Windows;

namespace Cyan_Pembuat_Soal {
    /// <summary>
    /// Interaction logic for App.xaml
    /// </summary>
    public partial class App : Application {
        private void Application_Startup(object sender, StartupEventArgs e){
            if (FindPlace(e.Args) != null) {
                Cyan_Pembuat_Soal.MainWindow a = new Cyan_Pembuat_Soal.MainWindow();
                a.Activate();
            } else {
                Cyan_Pembuat_Soal.MainWindow a = new Cyan_Pembuat_Soal.MainWindow();
                a.Activate();
                a.Closed += delegate(object senders, EventArgs es) {this.Shutdown();};
            }
        }
        private static string FindPlace(string[] a) {
            if (a.Length == 0) {
                return null;
            }
            int b = 0;
            System.Uri c;
            for (b = 0; b < a.Length; b++) {
                if(Uri.TryCreate(a[b], UriKind.RelativeOrAbsolute, out c)){
                    break;
                }
            }
            c = null;
            return a[b];
        }
    }
}

しかし、そのコードは正しく機能しませんでした。このプログラムの何が問題になっていますか?

4

2 に答える 2

1

a.ShowDialog();またはa.Show();に加えてを追加しようと思いa.Activate();ます。

を使用している理由はわかりませんがActivate()、やりたいことを実行することを確認してください。 http://msdn.microsoft.com/en-us/library/system.windows.window.activate.aspx

于 2012-08-03T08:13:54.433 に答える
0

a.Activate()の代わりにa.Show()を使用します。また、ハンドラーがApp.Xamlに登録されていることを確認してください。

<Application 
    ...
    Startup="Application_Startup">
于 2012-08-03T08:18:34.750 に答える