Как реализовать пользовательское свойство BindableProperty из XAML local:imageresource

#c# #xamarin.forms #embedded-resource #bindableproperty

#c# #xamarin.forms #встроенный ресурс #свойство bindableproperty

Вопрос:

(ОТРЕДАКТИРОВАНО: ясность)

Я хочу BindableProperty для пользовательского элемента управления, который в конечном итоге отобразит изображение. В моей реализации (выдержки ниже) свойству Source присваивается значение

 Xamarin.Forms.StreamImageSource
 

вместо чего-то похожего на путь к файлу.

Мой XAML имеет следующее:

     <controls:StretchImage
      x:Name="Folder"
      HeightRequest="25"
      HorizontalOptions="StartAndExpand"
      VerticalOptions="Center"
      BackgroundColor="Gold"
      Source="{local:ImageResource CloudTest.Assets.icons.folder_tab.png}" />
 

В StretchImage.cs у меня есть:

 class StretchImage : SKCanvasView
{
  public static readonly BindableProperty LabelProperty =
    BindableProperty.Create(nameof(Source), typeof(string), typeof(StretchImage),
                            null, Xamarin.Forms.BindingMode.OneWay);

  public string Source
  {
    get { return (string)GetValue(LabelProperty); }
    set { SetValue(LabelProperty, value); }
  }
}
 

Чего я не понимаю?

Комментарии:

1. ресурсы и ресурсы не имеют путей к файлам

2. ах, неправильный тип. вы случайно не знаете правильный тип?

3. Я предполагаю, что вы просто хотите использовать ImageSource

4. Это выглядит как правильное решение. Я не могу это доказать, пока не напишу остальную часть кода 🙂 Если вы опубликуете это в качестве ответа, я буду благодарен вам. Спасибо.