2016-11-14 3 views
0

Я пытаюсь реализовать ответ на это так questionИспользование Binding.IndexerName и Binding.ProvideValue в Xamarin Forms

Проблема заключается в том, что в Xamarin форм 2 ингредиенты не существует (или я не нашел их пока):

  • Binding.IndexerName
  • Binding.ProvideValue()

Я не знаю, почему они не существуют. Возможно, никто их не реализовал, может быть, есть техническая причина, по которой они не могут быть реализованы.

Могу ли я получить форму в виде xamarin? Может быть, по-другому?

ответ

0

Во-первых, обратите внимание, что этот ответ, вероятно, не работает с Xamarin.Forms, или, по крайней мере, с XamlC.

Если вы хотите получить эту работу, ваши MarkupExtensions должны реализовать IMarkupExtension<BindingBase> вместо IMarkupExtension.

ProvideValue() не определен в Binding классе, но в BindingExtension, но вы, вероятно, ничего не выиграет от инстанцировании BindingExtension и призывая ProvideValue на него против возвращения Привязка непосредственно.

IndexerName относится к атрибуту IndexerName класса Translator. Поскольку вы не используете его, по умолчанию используется «Item», и вы можете использовать это жестко заданное значение.

+0

Почему вы предполагаете, что он не работает с Xamarin.Forms? – Nathan

+0

Возможно, потому, что я написал Xaml Parser и компилятор для Xamarin.Forms ... –

+0

А, интересно. Спасибо, что помогли мне, кстати! Мой вопрос не был точным. Какая часть ответов вы не используете с xamarin.forms? – Nathan