Я пытаюсь разобрать некоторые данные json в моем приложении Windows. Для этого я написал несколько кодов. Код не содержит ошибок, но в моем текстовом блоке нет данных. Вот мой XAMLКак показать данные в текстовом блоке после JSON Parsing
<TextBlock Name="acc1" Margin="180, 60, 0, 0" Text="{Binding Accnumber1}" Foreground="White" VerticalAlignment="Top" HorizontalAlignment="Left" FontFamily="Segoe UI" FontSize="22" />
<TextBlock Name="bal1" Margin="180, 90,0, 0" Text="{Binding Availablebalance}" Foreground="White" VerticalAlignment="Top" HorizontalAlignment="Left" FontFamily="Segoe UI" FontSize="22" />
<TextBlock Name="acc2" Margin="180, 140, 0, 0" Text="{Binding Accnumber2}" Foreground="White" VerticalAlignment="Top" HorizontalAlignment="Left" FontFamily="Segoe UI" FontSize="22" />
<TextBlock Name="bal2" Margin="180, 170, 0, 0" Text="{Binding Availablebalance}" Foreground="White" VerticalAlignment="Top" HorizontalAlignment="Left" FontFamily="Segoe UI" FontSize="22" />
и это мой файл класса
public MainPage()
{
InitializeComponent();
CheckForAnimation();
BackKeyPress += OnBackKeyPressed;
WebClient webClient = new WebClient();
webClient.DownloadStringCompleted += webClient_DownloadStringCompleted;
ProgressBarRequest.Visibility = System.Windows.Visibility.Visible;
webClient.DownloadStringAsync(new Uri("http://mobimybank.appspot.com/loginresponse.json"));
}
void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
try
{
if (!string.IsNullOrEmpty(e.Result))
{
var root1 = JsonConvert.DeserializeObject<RootObject>(e.Result);
this.DataContext = root1;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
ProgressBarRequest.Visibility = System.Windows.Visibility.Collapsed;
}
}
Это класс RootObject файл
public class Mybank
{
public string status { get; set; }
}
public class Account
{
public string Accnumber1 { get; set; }
public string Availablebalance { get; set; }
public string Accnumber2 { get; set; }
}
public class Accounts
{
public List<Account> Account { get; set; }
}
public class Loginresponse
{
public Mybank { get; set; }
public Accounts { get; set; }
}
public class RootObject
{
public Loginresponse loginresponse { get; set; }
}
Когда я добавил наблюдатель в контексте данных он говорит мне данные были получены. Но данные не отображаются в указанных текстовых блоках. , пожалуйста, скажите мне область, в которой я делаю что-то неправильно, или правильный метод отображения данных.
Я хотел бы использовать DependencyProperties: Text = "{Binding RelativeSource = {RelativeSource AncestorType = {х: Тип ClassReferingTo }, AncestorLevel = 1}, Path = Brand_Name} "..... ваш код позади: создайте объект зависимости (Brand_Name) для ссылки. Вы должны иметь дело с depProps ... google it :) – marcel
Вы привязали TextBloxks к свойствам Brand, Type. Но когда вы меняете ObservableCollection, событие возникает с помощью свойства Results. – Romasz
Во-первых, спасибо за ответ, я бы попросил вас, пожалуйста, немного рассказать, чтобы я мог точно понять мою ошибку. – Dexto