C # - растяжение текстового поля, чтобы соответствовать содержащемуся окну - PullRequest
11 голосов
/ 19 декабря 2011

Я хочу, чтобы текстовое поле оставалось на определенном расстоянии от верхнего, нижнего, левого и правого краев родительской формы и растягивалось, как в окне.

В настоящее время у меня есть:

private void Form1_SizeChanged(object sender, EventArgs e)
{
    richTextBox1.Size = new System.Drawing.Size(this.ClientSize.Width - 24, richTextBox1.Size.Height);
}

... для ширины, но мне интересно, это правильный путь или нет.Есть ли лучший способ?

Ответы [ 2 ]

14 голосов
/ 19 декабря 2011

Как сказал Мооже, вам необходимо Anchor свойство элемента управления

Используйте свойство Anchor , чтобы определить, как автоматически изменяется размер элемента управления при изменении размера его родительского элемента управления. Привязка элемента управления к его родительскому элементу управления гарантирует, что привязанные ребра останутся в том же положении относительно границ элемента родительского элемента управления при изменении размера родительского элемента управления.

Но также из моего опытане забудьте назначить MinimumSize и MaximumSize элемента управления, эти свойства помогают элементу управления иметь определенный минимальный или максимальный размер, если вы изменяете размер формы слишком малым или слишком большим.

6 голосов
/ 23 июня 2015

вы также можете использовать Dock свойство, например, так:

richTextBox1.Dock = DockStyle.Fill;
...