2016-04-05 9 views
0

私はVisual Studio 2015でWindowsFormApplicationを作成しようとしており、何か助けが必要です。 私はインターネット上で答えを検索しようとしていましたが、以下の方法を見つけることができます:ShowDialog()の代わりに "Include"

私は2つのウィンドウ(ソリューション?)を持っています。私はこのコードの最初の1のボタンと第二のウィンドウを開きます。

this.Hide(); 
intermec prodinter = new intermec(); 
prodinter.ShowDialog(); 

私の質問は次のとおりです。 はどのように私は(PHPで「含める」など)の代わりに最初の近くの第二の窓「を含める」ことができますウィンドウを開いて、次のウィンドウを開きます。

+0

2つのフォームがありますが、2つ目のフォームを開きますか?あなたが最初に非表示にしたくない場合は最初に非表示にする必要はありません。現実的にそのページを一度に表示すると、WebページのPHPとは異なり、2番目のフォームを開くことができます。何を試しましたか? – BugFinder

+0

もう少し説明してください。ウィンドウを「含める」とはどういう意味ですか? – Pikoh

+0

いいえ、私はそれを隠したいと思っています。私たちのPHP Webページを例に挙げてみましょう:PHPで私は私のページにすべての主要な "もの"を持っているindex.phpファイルを持つことができます。そして、私はボタンをエキサンプルにするために、そのページに物を含めることができます。私はC#とWindowFormApplicationで同じことをしたい。 – NickiJey

答えて

1

フォームは単なる別のコントロールです。これはコンテナと考えることができます(他のコントロールを保持しているため)。

ユーザーコントロールは、複数のコントロールを保持することもできます。 WinFormsアプリケーションで別のウィンドウ内にウィンドウを表示する方法はありますが、その効果は必ずしも保証されません。したがって、 "Page1"と呼ばれるユーザーコントロールにすべてのコントロール(「ページ1」など)を配置し、必要に応じてそのユーザーコントロールをフォームに追加し、そのDockプロパティを塗りつぶす。

「別のページを表示するときは、Hide();「Page1」とShow();「Page2」と表示されます。

0

私は、フォームの継承について話していると思う:

だけでフォームを作成し、frmBaseとしてそれを呼び出すことができます。また、他のフォームにも追加したいfrmBaseにいくつかのコントロールを追加します。

他のフォームを作成し、frmDerivedとして呼び出すことができます。 frmDerivedの背後にあるコードで

は、単に次のようにします。

// derive the frmDerived form from frmBase 
public partial class frmDerived : frmBase 
{ 
    public frmDerived() 
    { 
     InitializeComponent(); 
    } 
} 

そしてちょうどそれがfrmBaseからすべてを含める必要があり、frmDerivedのフォームデザインをチェック。

また、frmDerivedでアクセスするために、必要に応じてfrmBaseの一部のコントロールのアクセス修飾子をPublicにしたい場合があります。

私はこれがあなたに役立つことを願っています。 :)