1. Для указания класса для элемента в XAML нужно использовать атрибут x:Class в корневом элементе разметки. Например, <Window x:Class="MyNamespace.MyWindow" ... />
2. Для улучшения реализации кода можно использовать привязку данных в XAML. Для этого нужно создать свойство зависимости в классе кода (code-behind) и привязать его к элементу Canvas через привязку данных.
Пример:
XAML:
<Canvas>
<TextBlock Text="{Binding XValue}" Canvas.Left="10" Canvas.Top="10"/>
</Canvas>
Code-behind:
public partial class MainWindow : Window
{
public static readonly DependencyProperty XValueProperty = DependencyProperty.Register("XValue", typeof(int), typeof(MainWindow), new PropertyMetadata(0));
public int XValue
{
get { return (int)GetValue(XValueProperty); }
set { SetValue(XValueProperty, value); }
}
public MainWindow()
{
InitializeComponent();
DataContext = this; // Устанавливаем текущий класс как контекст данных для привязки
}
}
Теперь при изменении значения свойства XValue в коде, текст в TextBlock на Canvas будет автоматически обновляться.