Ошибка привязки данных Silverlight - Работает в WPF, хотя!

StackOverflow https://stackoverflow.com/questions/292800

Вопрос

Запустите новое приложение Silverlight...и в коде позади (в событии "Loaded") поместите этот код:

// This will *NOT* cause an error.
this.LayoutRoot.DataContext = new string[5];

Но...

// This *WILL* cause an error!
this.LayoutRoot.DataContext = this;

Возникает ошибка: "Значение не попадает в ожидаемый диапазон". Кстати, этот код работает на 100% в обычном WPF (разработка для Windows), и не должно быть никаких причин, по которым он не будет работать в WPF / E :)

Есть какие-нибудь мысли?

Это было полезно?

Решение

В настоящее время вы не можете использовать визуальные элементы в качестве источника данных для привязки данных в Silverlight 2.Я думаю, что это планируется добавить для Silverlight v.Next.

Другие советы

Вы можете использовать визуальные элементы в качестве источника данных, если создадите привязку непосредственно в коде, но попытка присвоить визуальный элемент DataContext вызовет исключение ArgumentException.В этом нет особого смысла, но silverlight работает только на версии 2.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top