Итак, 2 дня go Я спросил, как сдвинуть 2 формы вместе, я получил этот ответ , который действительно помог мне.
Но теперь я хотел бы узнать , как двигаться первая форма, в то время как вторая свернута (поэтому она должна перестать двигаться, пока свернута, или это приведет к взлому sh из второй формы ...) ?
Я попробовал это:
private void MainForm_LocationChanged(object sender, EventArgs e) {
// All open child forms to be moved
Form[] formsToAdjust = Application
.OpenForms
.OfType<ChildForm>()
.ToArray();
FormsToAdjust formsToAdjust1 = new FormsToAdjust(); //added this
// If the main form has been moved...
if (formsToAdjust1.WindowState != FormWindowState.Minimized) //and this statement as well
{
if (m_PreviousLocation.X != int.MinValue)
foreach (var form in formsToAdjust) //... we move all child froms aw well
form.Location = new Point(
form.Location.X + Location.X - m_PreviousLocation.X,
form.Location.Y + Location.Y - m_PreviousLocation.Y
);
m_PreviousLocation = Location;
}
}
, но это не может работать, так как будет открывать вторую форму каждый раз, когда основная форма будет перемещена (да, это была глупая попытка, но я действительно могу не справится, как go решить эту проблему) ...
Таким образом, цель 1016 * будет равна , если вторая форма свернута , сохранить возможность перемещать основную форму без изменения местоположения второй.
Любая помощь будет очень полезна, Я продолжу поиск на моей стороне (на самом деле ищет некоторое время), ожидая ответа.
Спасибо:)