Dans mon viewmodelA, j'ai une propriété que lorsque le bouton de mon fragmentA.axml est cliqué, je fais Mvxbind et l'écran change et il montre viewmodelB et aussi j'envoie une requête http et je suis obtenir une réponse comme prévu. Cela fonctionne exactement comme je le veux. Mais le problème est que je peux sembler montrer cette réponse dans ma page fragmentB.axml (someNumber et status). Quelqu'un peut-il m'aider avec ce problème. Merci!!MvvmCross - MvxBind pas lier correctement
ViewmodelA.cs:
public MvxCommand SomeCommand
{
get
{
return new MvxCommand(() => something());
}
}
public async void something()
{
ShowViewModel<ViewModelB>();
SomeService serviceWrapper = new SomeService();
var model = {//Some Json request};
var result = await serviceWrapper.SubmitRequestAsync(model);
SomeResponse response = StaticMethods.DeserializeJson<SomeResponse>(result);
Status = response.SomeResponse1.Activity[0].Status.Description;
SomeNumber = response.SomeResponse1.SomeNumber;
Debug.WriteLine("SomeNumber : " + SomeNumber);
Debug.WriteLine("Status: " + Status);
}
private string _someNumber;
public string SomeNumber
{
get
{
return _someNumber;
}
set
{
SetProperty(ref _someNumber, value);
RaisePropertyChanged(() => SomeNumber);
}
}
private string _status;
public string Status
{
get
{
return _status;
}
set
{
SetProperty(ref _status, value);
RaisePropertyChanged(() => Status);
}
}
fragmentA.axml
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Submit"
android:id="@+id/Submit"
local:MvxBind="Click SomeCommand" />
fragmentB.axml
<TextView
android:text="Some Number:"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/SomeNum"
local:MvxBind="Text SomeNumber "/>
<TextView
android:text="Status:"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/status"
local:MvxBind="Text Status"/>
Votre classe a-t-elle défini: INotifyPropertyChanged? Vous n'avez pas fourni de définition de classe –
Je suis un peu confus.Il semble que vous essayez d'accéder à ViewModelB, mais les propriétés que vous souhaitez afficher dans votre vue sont dans ViewModelA? – Ulbo
@Ulbo Je vois ce que vous dites mais je veux envoyer la requête http, quand je clique sur le bouton. Mais mon problème est que je ne sais pas comment afficher ces données dans un autre fragment de viewmodel (c'est-à-dire fragmentB). Si vous savez comment je peux aborder ce problème, s'il vous plaît faites le moi savoir. Merci –