2012-02-24 19 views
0

コンソールアプリケーションでWindowsフォームアプリケーションを実行することはできますか?コンソールアプリケーションでWindowsフォームアプリケーションを実行することは可能ですか?

もしそうなら、私はどのようにMain()voidを使用しますか?

そして、どうやってWindowsフォームからコンソールに文字列を渡すことができますか?

+0

コンソールアプリケーション「と」とはどういう意味ですか? 1つ(コンソールアプリケーション)から別のプロセス(Windowsフォームアプリケーション)を開始する2つのプロセスが必要なことを意味しますか? –

+0

同じ番組のように。あなたはどのようにしてWindowsフォームを取得し、次に別のものを取得できるかを知っていますか?空のプロジェクトのように、それはcmdのものだけで始まります。ええ –

+0

それはあなたが意味することはまだ明らかではない、私は恐れている。プロジェクトは、* Windows Forms app *または* console app(またはどちらでもない)です。エクスプローラからダブルクリックすると、コンソールを起動するか、起動しません。コンソールから起動すると、直ちにコンソールから切り離されます。必要に応じてコンソールアプリケーション内でフォームを作成して表示することもできますが、それは別の問題です。あなたが本当に達成しようとしていることを明確にすることができれば、それは多くの助けになります。 –

答えて

1

あなたが言っていることは、単にフォームを開くことができるコンソールアプリケーションを使いたいということです。あなたはこれを行うことができます。

通常どおりコンソールアプリケーションを作成しますが、プロジェクトにフォーム(またはフォームを含むプロジェクトへの参照)を追加します。それでは、このようなものがほしいだけです。

using System; 

namespace ConsoleApplication1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Console.WriteLine("I'm going to open a form now!"); 
      var form = new Form1(); 
      form.ShowDialog(); 
     } 
    } 
} 

あなたのフォームに情報を追加したい場合は、フォームにプロパティを追加したり、Aフォームに送信したい文字列情報を受け取り、カスタムコンストラクタを追加することができます。

1

まず、通常のようにWindowsアプリケーションを作成します。

ソリューションエクスプローラで新しいコンソールアプリケーション

を作成し、後藤References-> Reference-を追加]> [デバッグ - にブラウズタブ - > [プロジェクトのパスをクリックしてください>アプリケーション

を選択しても、システムへの参照を追加します.Windows.Form;コードで

がNEWFORMを使用したアプリケーション の名前空間を含める; //例

class Program 
{ 
    static void Main(string[] args) 
    { 
     TestForm t = new TestForm(); //Class of WindowsFormApplication NewForm 
     t.ShowDialog(); 

    } 
} 
} 
関連する問題