Как динамически изменить content на button?
У меня есть приложение, как показано на рисунке.

Button выступает в роли ползунка по канвасу. По задумке должно быть так: При перемещении кнопки на ней должна отображаться дата. Я пытался это реализовать следующий образом:
private void Button_PreviewMouseMove(object sender, MouseEventArgs e)
{
Canvas canvas = FindVisualChildByName<Canvas>(Tablica, "cnvs");
int number = 0;
Control control = sender as Control;
Point x = e.GetPosition(canvas);
if (e.LeftButton == MouseButtonState.Pressed)
{
Canvas.SetLeft(control, Canvas.GetLeft(control) + (x.X - p.X));
int a = Convert.ToInt32(365 * Convert.ToDouble(x.X) / Tablica.Columns[4].ActualWidth);
int b = Convert.ToInt32(365 * (Convert.ToDouble(x.X)) / Tablica.Columns[4].ActualWidth + control.ActualWidth / 3);
DateTime date = new DateTime(2021, 01, 01);
date = date.AddDays(a);
DateTime dateOne = new DateTime(2021, 01, 01);
dateOne = dateOne.AddDays(b);
string s = date.ToString("dd/MM")/* + " - " + dateOne.ToString("dd/MM")*/;
db.OpenConn();
DataTable dt = db.ReadVol("SELECT Personal.[Subname], Personal.[FirstName], Personal.[Patronomyc] FROM Personal;");
db.CloseCon();
for (int i = 0; i < dt.Rows.Count; i++) {
if (dt.Rows[i][1].ToString() == Label) {
number = i;
}
}
collection[number].Time = s;
}
p = x;
}
Но, дата не отображается как контент у кнопки. Буду благодарен за помощь
Ответы (1 шт):
Автор решения: aepot
→ Ссылка
Control control = sender as Control;
поменяйте на
Button button = sender as Button;
затем
button.Content = s;