私はホームページ上のリストビュー内の項目のリストを入力するxamarinプロジェクトをビルドしました。このページの変数をViewModelクラスに渡す必要があります。それ、どうやったら出来るの???ヘルプは高く評価されます。私のViewModelクラスの私のホームページの変数にアクセスするには?
マイホームページのコードは以下の通りです:
プライベート非同期無効LstItems_OnItemTapped(オブジェクトo、ItemTappedEventArgs E)
{
var ItemCodeParam = e.Item as Item;
var ItemCode = ItemCodeParam.ItemCode;
await Navigation.PushAsync(new DetailItemPage(ItemCode));
私はが私のViewModelクラスにをItemCode渡す必要があります。
}
マイビューモデルは
名前空間MyFirstDbApp.ViewModels { パブリッククラスItemDetailsViewModel以下の通りである:INotifyPropertyChangedの { プライベートリスト_itemsList。あなたのVMを作成してください
public List<Item> ItemsList
{
get { return _itemsList; }
set
{
_itemsList = value;
OnPropertyChanged();
}
}
public ItemDetailsViewModel()
{
InitializeDataAsync();
}
private async Task InitializeDataAsync()
{
var result = await ItemServices.GetItemsAsync().ConfigureAwait(false);
ItemsList = result.Where(x => x.ItemCode == "").ToList();
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
}
?値をコンストラクタに渡すか、プロパティを設定するだけです。 – Jason
これは本当におわかりです。しかし、私plsはコーディングでそれを行う方法を教えてもいいですか? VMコードを質問に含めました。私はホームページからVMにItemCodeを渡す必要があります。 ItemsList = result.Where(x => x.ItemCode == "").ToList(); – user1508599