Size: a a a

Xamarin Developers

2021 January 19

TV

Tursunali Vositov in Xamarin Developers
источник

MO

Mr. Onion in Xamarin Developers
Tursunali Vositov
Учел замечания. Всё равно не показывает. Получился такой код:
class MyModelListViewModel : INotifyPropertyChanged
   {
       public event PropertyChangedEventHandler PropertyChanged;
       protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
       {
           PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
       }
 
       private ObservableCollection<MyModel> myModelList;
       public ObservableCollection<MyModel> MyModelList
       {
           get { return myModelList; }
           set { myModelList = value; OnPropertyChanged(); }
       }

       public MyModelListViewModel()
       {
           Device.BeginInvokeOnMainThread(() => {
               MyModelList = new MyModelService().MyModels; //Из класса MyModelService берет заполненное данными поле MyModels типа ObservableCollection
           });
       }        
   }
Вы вот это чутку переделайте тогда
источник

MO

Mr. Onion in Xamarin Developers
Там начните Таск, как в первом примере Вашем было
источник

MO

Mr. Onion in Xamarin Developers
И в самом таске - invokeonmainthread. Для начала попробуйте itemsSource напрямую установить
источник

MO

Mr. Onion in Xamarin Developers
Без биндингов
источник

TV

Tursunali Vositov in Xamarin Developers
Mr. Onion
Вы хотите чтоб индикатор крутился типа пока грузится там то что надо?
если запустить приложение и после инициализации горячей перезагрузки XAML изменить файл интерфейса и сохранить, тогда список показывается
источник

MO

Mr. Onion in Xamarin Developers
Tursunali Vositov
если запустить приложение и после инициализации горячей перезагрузки XAML изменить файл интерфейса и сохранить, тогда список показывается
О, так тогда такой же трабл наверное как и у меня был
источник

MO

Mr. Onion in Xamarin Developers
Замените на ListView
источник

dd

dudu dida in Xamarin Developers
Ну Во-первых пихать что-то долгое в конструктор плохо
источник

dd

dudu dida in Xamarin Developers
Во вторых gists, pastbin или скрины в норм качестве
источник

dd

dudu dida in Xamarin Developers
3. Observable collection - для изменяимых колекций, когда что-то добавляется убирается
источник

dd

dudu dida in Xamarin Developers
4) ну попробуйте для начала все максимально упростить

Тип заполнить колекцицию зашитыми данными
источник

IS

Ilya Sarzhanov in Xamarin Developers
Tursunali Vositov
Всем привет.
Есть CollectionView. Пытаюсь заполнить данные:
public bool IsBusy { get; set; }  //для ActivityIndicator      
public IEnumerable<MyModel> MyModelList { get; set; }

public MyModelListViewModel() //Конструктор класса. Этот класс назначается в качестве BindingContext
       {
           IsBusy = true;

           Task.Run(async () =>
           {
               MyModelList = await new MyModelService().GetMyModelsAsync();
               IsBusy = false;
           });
       }

Из класса MyModelsService берутся данные:
public ObservableCollection<MyModel> MyModels { get; set; }

public MyModelService()
       {
           MyModels = new ObservableCollection<MyModel>();

           MyModel.Add(...);
           MyModel.Add(...);
       }
public async Task<ObservableCollection<MyModel>> GetMyModelsAsync()
       {          
           return await Task.FromResult(MyModel);
       }

В CollectionView ничего не показывает
Проверьте когда начинаете заполнять, 2) экземпляр вашей MyModel реализует ли Fody плагин
источник

RG

Renat Galiev in Xamarin Developers
Привет всем, в ксамарине возможен биндинг по типу вью модели? Как в WPF если да то можно ссылку как реализовать? Все мои попытки были тщетными
источник

PN

Paul N in Xamarin Developers
Renat Galiev
Привет всем, в ксамарине возможен биндинг по типу вью модели? Как в WPF если да то можно ссылку как реализовать? Все мои попытки были тщетными
В XAML? Xamarin.Forms в помощь
источник

RG

Renat Galiev in Xamarin Developers
так там не делают по типу биндинг хочу чтобы для одной вью модели одно отображение было в коллекции а в другой другое например есть class1 и его наследники class2 и class3 которые по разному должны отображаться в коллекции observablecollection<class1>
источник

МФ

Михаил Филиппов... in Xamarin Developers
Tursunali Vositov
Всем привет.
Есть CollectionView. Пытаюсь заполнить данные:
public bool IsBusy { get; set; }  //для ActivityIndicator      
public IEnumerable<MyModel> MyModelList { get; set; }

public MyModelListViewModel() //Конструктор класса. Этот класс назначается в качестве BindingContext
       {
           IsBusy = true;

           Task.Run(async () =>
           {
               MyModelList = await new MyModelService().GetMyModelsAsync();
               IsBusy = false;
           });
       }

Из класса MyModelsService берутся данные:
public ObservableCollection<MyModel> MyModels { get; set; }

public MyModelService()
       {
           MyModels = new ObservableCollection<MyModel>();

           MyModel.Add(...);
           MyModel.Add(...);
       }
public async Task<ObservableCollection<MyModel>> GetMyModelsAsync()
       {          
           return await Task.FromResult(MyModel);
       }

В CollectionView ничего не показывает
Простейшая ошибка на понимание проперти ченжед
Обсервабл коллекшен уже имеет его, не обхожимо использовать эту же коллекцию а не присваивать новую, так вам необходимо вместо обнуления коллекции очищать её, .Clear(), вместо присваивания новой, .Add(), для каждого элемента
источник

МФ

Михаил Филиппов... in Xamarin Developers
Renat Galiev
так там не делают по типу биндинг хочу чтобы для одной вью модели одно отображение было в коллекции а в другой другое например есть class1 и его наследники class2 и class3 которые по разному должны отображаться в коллекции observablecollection<class1>
Про selectordatatemplate почитай
источник

IS

Ilya Sarzhanov in Xamarin Developers
Renat Galiev
так там не делают по типу биндинг хочу чтобы для одной вью модели одно отображение было в коллекции а в другой другое например есть class1 и его наследники class2 и class3 которые по разному должны отображаться в коллекции observablecollection<class1>
источник

К🇦

Коала 🇦🇺 in Xamarin Developers
Здравствуйте. Получаю через АПИ стрим, и нужно на странице разместить изображение  делаю
var response =apiService.ProfileGetAvatar();
               ImageSource imageSource = ImageSource.FromStream(() => response);
               Image = imageSource;


   public ImageSource Image {
           get => _image;
           set => SetProperty(ref _image, value);
       }

Изображение не отображается.
источник