Гость
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / SL & ExpandoObject & Binding? / 3 сообщений из 3, страница 1 из 1
11.07.2012, 11:50
    #37874546
enigmatic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SL & ExpandoObject & Binding?
Пробовал на нескольких машинах - у меня сабж не работает. Очень хочется чтобы работало =)
Очень интересует, работает ли у вас тестовый проект для сильверлайта.

Пробую двумя методами:
Код: plaintext
{Binding Property}

Код: plaintext
{Binding [Property]}


В первом случае в Output выводится:
Ошибка System.Windows.Data: ошибка пути выражения привязки (BindingExpression): не найдено свойство "Property" в "System.Dynamic.ExpandoObject" "System.Dynamic.ExpandoObject" (HashCode=19515494). Выражение привязки: Path="Property" DataItem="System.Dynamic.ExpandoObject" (HashCode=19515494); целевой элемент "System.Windows.Controls.TextBlock" (Name="firstTestTextBlock"); целевое свойство "Text" (тип "System.String")..
Во втором случае этой ошибки нет.

Если пытаться сделать то же самое в ВПФ, то

в первом случае ошибок не будет и привязка от работает .

во втором случае в Output выведется:
System.Windows.Data Error: 17 : Cannot get 'Item[]' value (type 'Object') from '' (type 'ExpandoObject'). BindingExpression:Path=[Property]; DataItem='ExpandoObject' (HashCode=59593954); target element is 'TextBlock' (Name='secondTestTextBlock'); target property is 'Text' (type 'String') TargetInvocationException:'System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: The result of the dynamic binding produced by the object with type 'System.Dynamic.ExpandoObject' for the binder 'MS.Internal.Data.TrivialGetIndexBinder' needs at least one restriction.
at System.Dynamic.DynamicMetaObjectBinder.Bind(Object[] args, ReadOnlyCollection`1 parameters, LabelTarget returnLabel)
at System.Runtime.CompilerServices.CallSiteBinder.BindCore[T](CallSite`1 site, Object[] args)
at System.Dynamic.UpdateDelegates.UpdateAndExecute2[T0,T1,TRet](CallSite site, T0 arg0, T1 arg1)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeType typeOwner)
at System.RuntimeMethodHandle.InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeType typeOwner)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
at System.Delegate.DynamicInvokeImpl(Object[] args)
at MS.Internal.Data.DynamicIndexerAccessor.GetValue(Object component, Object[] args)
at MS.Internal.Data.PropertyPathWorker.GetValue(Object item, Int32 level)
at MS.Internal.Data.PropertyPathWorker.RawValue(Int32 k)'
Вопрос: как заставить работать привязку?

Прикрепляю тестовые проекты для сильверлайта и ВПФ.
Попробуйте запустить у себя сильверлайт проект. Скажите, работает ли хоть один из методов привязки для SL?
...
Рейтинг: 0 / 0
11.07.2012, 12:27
    #37874649
enigmatic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SL & ExpandoObject & Binding?
Судя по этому и этому привязка должна работать.
Но судя по этому - нет.

Все линки из гугла по кейвордам "dynamic expandoobject silverlight".
...
Рейтинг: 0 / 0
12.07.2012, 07:05
    #37875788
enigmatic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SL & ExpandoObject & Binding?
enigmaticНо судя по этому - нет.Судя по всему и по ответу на тот вопрос, нужно реализовывать подобную штуку.
Дальнейшие кейворды для поиска - "ICustomTypeProvider silverlight".
...
Рейтинг: 0 / 0
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / SL & ExpandoObject & Binding? / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]