c# VS 2019 Xamarin: проблема с настройкой источника изображений из кода для встроенных изображений - PullRequest
0 голосов
/ 13 марта 2020

Я успешно создал изображение в XAML, в сетке, в AbsoulteLayout

<Image HeightRequest="15" WidthRequest="15" 
   Source="{local:ImageResource ScKWander.Images.UI.arrow_pointer_R.png}"                
   TranslationY="330" TranslationX="15"
/>

Я пытаюсь создать изображения в коде позади, чтобы я мог изменить позиции в коде. Хотя я пробовал несколько возможных альтернатив, ничего не помогло. Код ниже компилируется и запускается без ошибок. Поймать никогда не ударил, Единственное, что на экране, это одно изображение, созданное в XAML. Я собирался использовать сетку только как контейнер, но я могу использовать строку / столбец сетки, если это необходимо. В UWP я использовал холст.

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

Я должен добавить, что сейчас я получаю несколько ошибок Xamarin. Я думаю, что это новая сборка. Я не думаю, что это влияет на это. Я строю, запускаю и вижу одну стрелку, определенную XAML.

private void FillGrid()
{
 int iYoffset   = 15;
 int iXoffset   = 15;
 int iYGridsize = 25;
 int iXGridsize = 25;
 try 
   {
   for (int iCount0 = 0; iCount0 < 5; iCount0++)
     {
     for (int iCount1 = 0; iCount1 < 5; iCount1++)
       {
         var thisImage = new Image { Source = ImageSource.FromResource
            ("local:ImageResource ScKWander.Images.UI.arrow_pointer_R.png") };

       //thisImage.TranslationY  = iYoffset + (iCount0 * iYGridsize);
       //thisImage.TranslationX  = iXoffset + (iCount1 * iXGridsize);

         thisImage.HeightRequest = 25;
         thisImage.WidthRequest  = 25;
         gridBoard.Children.Add(thisImage, iCount0 * iYGridsize, iCount1 * iXGridsize);
       }
     }
   }
   catch (Exception e)
   {
   string ex = e.Message;
   }
}

1 Ответ

0 голосов
/ 13 марта 2020

Документация показывает, как именно это сделать

var embeddedImage = new Image { 
  Source = ImageSource.FromResource(
    "WorkingWithImages.beach.jpg", 
    typeof(EmbeddedImages).GetTypeInfo().Assembly
  ) };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...