У меня есть форма, которая содержит (помимо прочего) опцию чата.У меня есть 2 richtextbox и кнопка для отправки сообщений.
Я хочу, чтобы при изменении размера формы окно сообщений становилось больше (илименьше) и что поле ввода и кнопка будут перемещаться вниз (или вверх), поэтому они останутся под окном сообщений.
Вот код, который я написал:
private void MainForm_SizeChanged(object sender, EventArgs e)
{
Rectangle screenRectangle = RectangleToScreen(ClientRectangle);
int titleHeight = screenRectangle.Top - Top;
int chatCurrentHeight = richTextBox2.Height;
int chatNewHeight=Height-titleHeight - richTextBox1.Height - button1.Height - 100;
richTextBox2.Height = chatNewHeight;
int heightDiffernce = chatNewHeight - chatCurrentHeight;
richTextBox1.Location = new Point(richTextBox1.Location.X, richTextBox1.Location.Y+heightDiffernce);
button1.Location = new Point(button1.Location.X, button1.Location.Y+heightDiffernce);
}
*** richtextbox1 - это поле ввода, а richtextbox2 - это окно сообщений.
Работает, но ломается, когда окно становится очень маленьким (после того, как размер окна сообщений почти равен 0) и когда я минимизируюокно: поле ввода и кнопка исчезают.
Как это исправить?