Я хочу реализовать Canvas, который позволяет перетаскивать объекты. Таким образом, я полагал, что я мог бы просто наследовать от Canvas и переопределить события мыши:Inheriting from Canvas
namespace ISC_CG
{
public class DragCanvas : Canvas
{
protected override void OnPreviewMouseLeftButtonDown(MouseButtonEventArgs e)
...
И в XAML:
<Window x:Class="ISC_CG.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Name="mainWindow"
DataContext="{Binding ElementName=mainWindow}"
xmlns:cg="clr-namespace:ISC_CG"
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
Title="MainWindow" Height="350" Width="525">
<cg:DragCanvas Name="mainCanvas" Background="{StaticResource checkers}" ClipToBounds="True" Focusable="True">
Но я получаю сообщение об ошибке:
The name "DragCanvas" does not exist in the namespace "clr-namespace:ISC_CG".
я упускаю какой-то шаг здесь?
Спасибо.
- это холст в той же сборке, что и окно? – thumbmunkeys
Вы пытались создать проект? Вы получите эту ошибку, пока она не будет скомпилирована. – Matt
@ thumbmunkeys Да, это все в одном проекте. –