0

Windowsフォームアプリケーションを作成している間、最初はButton、TextBox、Labelなどのすべてのコントロールを非表示にしています。一度、ユーザーが正しいディレクトリを選択するなどの適切なアクティビティを実行すると、次のコントロールが表示されます(通常、ユーザーは多くの自由を得ることができませんが、正しいディレクトリを指定することができます)。他のコントロールを常に見えなくする意味はありませんが、学習プロセスとしてそれを実行したいと思います。

ここで問題となるのは、新しいコントロールが表示されるたびにフォームのサイズを変更するにはどうすればよいかということです。

たとえば、開始時に1つのTextBoxと[参照]ボタンのみが表示されます。ここで、ウィンドウフォームは表示されているコントロールのみに拡大縮小する必要があります。次に、ユーザーが適切なディレクトリパスを指定し、プログラムがそれを認識すると、ボタンやrichTextBoxなどの次のコントロールが表示され、フォームは新しいコントロールに合わせて動的に変更されます。

手伝ってくれてありがとう、

4

1 に答える 1

2

これはすべて簡単です。プロパティを使用してコントロールの可視性を変更し、フォームのおよびプロパティをVisible変更してフォームのサイズを変更できます。HeightWidth

Form1という名前のフォームを作成し、button1button2という名前の 2 つのボタンを追加し、次のコードをコピーして貼り付けると、フォームのサイズ変更とコントロールの可視性の変更の両方が示されます。

フォームが読み込まれると、 button2は非表示に設定され、幅と高さはそれぞれ 100px に設定されます。button1が押されるたびに、フォームのサイズが変更され、 button2が表示されるように設定されます。

using System;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            button2.Visible = false;

            Width = 100;
            Height = 100;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Width = 200;
            Height = 200;
            button2.Visible = true;
        }
    }
}
于 2012-09-18T12:48:48.483 に答える