Здравствуйте, я столкнулся с проблемой создание гексагональной сети в WPF и одно интересно решение в вопросе Гексагональная сетка .Я начинающий программист самоучка и решил оживить пример и потом про экспериментировать с ним, но столкнулся с такой проблемами как:
xmlns:view="clr-namespace:WpfApplication1"
// дальше строки
<view:FieldPositionToCoordinateXConverter x:Key="XConv"/>
<view:FieldPositionToCoordinateYConverter x:Key="YConv"/>
Последние строчки не работают так как пишет что view не обнаружено. А так же данная библиотека вообще не обнаружена :
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
и из-за этого возникают проблемы. А так же в коде на С# не обнаружена вот эта строчка:
new RelayCommand(OnActivate);
У вас должны быть классы FieldPositionToCoordinateXConverter и FieldPositionToCoordinateYConverter в пространстве имён WpfApplication1. Убедитесь, что они там действительно есть.
Подключите System.Windows.Interactivity.dll. Для этого можно, например, установить Expression Blend SDK:
RelayCommand должен быть в вашем MVVM-фреймворке. Если вы не пользуетесь фреймворками, можно определить самостоятельно. Например, так:
class RelayCommand : RelayCommand<object>
{
public RelayCommand(Action execute) : base(_ => execute()) { }
public RelayCommand(Action execute, Func<bool> canExecute) :
base(_ => execute(), _ => canExecute()) { }
}
class RelayCommand<T> : ICommand
{
protected readonly Predicate<T> canExecute;
protected readonly Action<T> execute;
public event EventHandler CanExecuteChanged;
public RelayCommand(Action<T> execute) : this(execute, _ => true) { }
public RelayCommand(Action<T> execute, Predicate<T> canExecute)
{
this.execute = execute ??
throw new ArgumentNullException(nameof(execute));
this.canExecute = canExecute ??
throw new ArgumentNullException(nameof(canExecute));
}
public bool CanExecute(object parameter) => canExecute((T)parameter);
public void Execute(object parameter) => execute((T)parameter);
public void RaiseCanExecuteChanged() =>
CanExecuteChanged?.Invoke(this, EventArgs.Empty);
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости