得到主窗口

时间:2011-07-29 11:11:08

标签: c#-4.0

我试图让应用程序的主窗口写成C#。 Application.MainWindow属性不起作用:(

使用:

using System;
using System.Windows;

using System.Windows.Forms;
using System.ComponentModel;
using System.Drawing;
using System.Collections.Generic;

using My;
using MyDialogs;

using System.Xml.Serialization;
using System.Runtime.InteropServices;

using System.Windows.Input;
using System.Windows.Media;
using System.Threading;
using System.Windows.Interop;

2 个答案:

答案 0 :(得分:1)

我认为您的应用程序类型是Windows Forms应用程序。以下是你的帖子:

  

我有这个

private static void Main(string[] args) { 
    Application.EnableVisualStyles(); 
    Application.SetCompatibleTextRenderingDefault(false); 
    Application.Run(new MainForm()); 
} 

所以,你不能使用MainWindow对象(System.Windows.Window的类型),因为它在WPF中使用。创建新的WPF项目,您可以访问Application.MainWindow属性。

答案 1 :(得分:0)

你的应用程序在任何地方都有这样的代码吗?

Application.Run(new Form1());

Form1是应用程序启动时创建的表单的类型。这是创建新Windows窗体应用程序时默认创建的代码。如果要记住该实例,只需将结果存储在其他类可访问的变量中。例如:

static class Program
{
  public static Form1 MainForm;

  // ...

  static void Main()
  {
     // ...
     MainForm = new Form1();
     Application.Run(MainForm);
  }
}