Попробуйте:
x0 = interp1(y,x,0,'spline');
y0 = interp1(x,y,0,'spline');
Подобный вопрос / ответ здесь , за исключением того, что вам нужно будет поиграть с методом и, возможно, даже с экстраполяцией, как описано в в этом Matlab страница .
Неоптимальным способом будет поиск в визуальном дереве всех свойств зависимостей, а затем проверка:
var bindingExpression = BindingOperations.GetBindingExpressionBase(dependencyObject, dependencyProperty);
if (bindingExpression != null)
{
var status = bindingExpression.Status;
}
Если статус
равен Unattached
, тогда выражение не разрешается.
Конечно, вы не захотите делать это в производственном приложении, но это может иметь смысл в сценарий отладки или тестирования интеграции.
Ошибки привязки данных отображаются в окне вывода Visual Studio. Например, скажем, я хочу привязать TextBlock к свойству Title окна, но я неправильно набрал «Title» как «Ritle». Я увижу это в окне вывода:
Ошибка System.Windows.Data: 39: Ошибка пути BindingExpression: свойство 'Ritle' не найдено в 'object' '' MessageWindow '(Name =' Window ')'. BindingExpression: Path = Ritle; DataItem = 'MessageWindow' (Name = 'Window'); целевой элемент - TextBlock (Name = 'WindowTitle'); Целевым свойством является «Текст» (тип «Строка»).
Вы можете получить больше контроля над сообщениями об этих сообщениях, используя источники трассировки. Эта статья Беа Столльниц описывает это более подробно.