Как получить доступ к свойствам формы? - PullRequest
0 голосов
/ 27 сентября 2019

Итак, у меня есть класс 'employee', в котором у меня есть свойства double X и double Y, и я хочу связать эти два с расположением формы.(верхний левый угол) Я пытался сделать это, используя Как получить положение формы Windows на экране? , но это дает только значение, которое не помогает.

Как можноЯ получаю доступ к фактическим свойствам?

Пока пробовали:

this.Left.DataBindings.Add("Value", EmpNd, "ThisEmployee.X", true, DataSourceUpdateMode.OnValidation);

1 Ответ

1 голос
/ 27 сентября 2019

Допустим, у вас есть два текстовых поля, в которых будут отображаться X и Y координаты формы.В событии Load вашей формы вы можете привязать свойства DesktopLocation.X и DesktopLocation.Y формы следующим образом:

private void Form1_Load(object sender, EventArgs e)
{
    txtX.DataBindings.Add("Text", this.DesktopLocation.X, null);
    txtY.DataBindings.Add("Text", this.DesktopLocation.Y, null);
}

Если вы хотите, чтобы в текстовых полях отображалось обновленное значение при перемещении формы,Вы можете объявить метод, который делает это, и вызывать его всякий раз, когда происходит событие Form_Move():

private void Form1_Move(object sender, EventArgs e)
{
    RefreshDataBindings();
}

public void RefreshDataBindings()
{
    txtX.DataBindings.Clear();
    txtY.DataBindings.Clear();
    txtX.DataBindings.Add("Text", this.DesktopLocation.X, null);
    txtY.DataBindings.Add("Text", this.DesktopLocation.Y, null);
}
...