C#计算Xamarin的项目
我的模型有3个字段:C#计算Xamarin的项目,c#,xamarin,xamarin.forms,C#,Xamarin,Xamarin.forms,我的模型有3个字段:标题,正文,状态 public class Names { [PrimaryKey] public string Title { get; set; } public string Body { get; set; } public string Status{ get; set; }} 当用户打开页面时,他可以看到带有字段的名称列表(Title,Body)。 页面的代码如下所示: xaml.cs [XamlCo
标题
,正文
,状态
public class Names
{ [PrimaryKey]
public string Title { get; set; }
public string Body { get; set; }
public string Status{ get; set; }}
当用户打开页面时,他可以看到带有字段的名称列表(Title
,Body
)。
页面的代码如下所示:
xaml.cs
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class HomePage : ContentPage
{
public ObservableCollection<Models.Names> items { get; set; }
public HomePage()
{
items = new ObservableCollection<Models.Names>();
this.BindingContext = this;
InitializeComponent();
List.ItemSelected += (sender, e) => {
((ListView)sender).SelectedItem = null;
};
List.Refreshing += (sender, e) => {
LoadUsersData();
};
LoadUsersData();
}
public async void LoadUsersData()
{
List.IsRefreshing = true;
var Names= await App.Database.Names.GetItemsAsync();
items.Clear();
foreach (var item in Names)
items.Add(item);
List.IsRefreshing = false;
}
}
[XamlCompilation(XamlCompilationOptions.Compile)]
公共部分类主页:ContentPage
{
公共ObservableCollection项{get;set;}
公共网页()
{
items=新的ObservableCollection();
this.BindingContext=this;
初始化组件();
List.ItemSelected+=(发件人,e)=>{
((列表视图)发件人)。选择EdItem=null;
};
列表。刷新+=(发件人,e)=>{
LoadUsersData();
};
LoadUsersData();
}
公共异步void LoadUsersData()
{
List.IsRefreshing=true;
var Names=wait App.Database.Names.GetItemsAsync();
items.Clear();
foreach(名称中的变量项)
项目。添加(项目);
List.IsRefreshing=false;
}
}
xaml
<StackLayout>
<ListView x:Name="List"
HasUnevenRows="True"
ItemsSource="{Binding items}"
IsPullToRefreshEnabled="True">
<ListView.ItemTemplate>
<DataTemplate>
<TextCell
Text="{Binding Title}"
Detail="{Binding Body}"
TextColor="Black"
DetailColor="Gray">
</TextCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
在页面的开头,我想添加一个字符串,显示状态为“新建”的所有项目的数量。
如何操作?添加一个
标签
,该标签绑定到ObservableCollection
的计数
属性(每次从收藏中添加/删除项目时都会通知它):
现在,用MyObservableCollection替换使用的ObservableCollection
public MyObservableCollection items { get; set; }
在XAML中,您现在可以绑定到NewCount
:
<Label Text="{Binding items.Count, StringFormat='Status = {0}'}"/>
<Label Text="{Binding items.NewCount, StringFormat='Status = {0}'}"/>
就使用BindableProperty
而言,已经发布了其他SO问题/答案和一篇很棒的博客文章:
public MyObservableCollection items { get; set; }
<Label Text="{Binding items.Count, StringFormat='Status = {0}'}"/>
<Label Text="{Binding items.NewCount, StringFormat='Status = {0}'}"/>