On HomePage.xaml
<Page.DataContext>
<ViewModel:GetTweetVM/>
</Page.DataContext>
Listview
<!--Content-->
<ListView x:Name="lstHome"
Grid.Row="2"
Margin="5"
ItemInvoked="lstHome_ItemInvoked"
ContainerContentChanging="lstHome_ContainerContentChanging" ItemsSource="{Binding statusList}">
<ListView.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="auto"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Image x:Name="imgThumbnailUser" Source="{Binding}"></Image>
<StackPanel Orientation="Vertical" Grid.Column="1">
<StackPanel Orientation="Horizontal">
<TextBlock x:Name="txtName" Text="{Binding Text}"></TextBlock>
<TextBlock x:Name="txtUsername" Text="{Binding User.Name}" Foreground="#CCCCCC"></TextBlock>
</StackPanel>
<TextBlock x:Name="txtContentMessage" Text="{Binding User.Categories.Name}" TextTrimming="CharacterEllipsis" Foreground="#CCCCCC"></TextBlock>
</StackPanel>
<TextBlock x:Name="txtDateTime" Text="{Binding}" Foreground="#CCCCCC"></TextBlock>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</control:ListView>
In GetTweetVM
public class GetTweetVM
{
TwitterContext twitter;
public List<Status> statusList { get; set; }
public GetTweetVM()
{
statusList = new List<Status>();
if (SharedState.Authorizer != null)
{
twitter = new TwitterContext(SharedState.Authorizer);
GetTweet();
}
else
return;
}
public async void GetTweet()
{
//base.GetTweet();
var objectStatus = await (from status in twitter.Status
where status.Type == LinqToTwitter.StatusType.Home && status.Count==10
select status).ToListAsync();
foreach(var item in objectStatus)
{
statusList.Add(item);
}
string t = statusList[0].Text;
}
}
The results :
- string t will get value from statusList->"fadsvs.........."
- On xaml that it do not binding to view.
- Listview is no data.
I don't know where it is wrong? Please help me to fix it.