如何根据状态绑定(bind)背景颜色
我试过这段代码,它没有工作
var cat = JsonConvert.DeserializeObject<List<TableStat>>(response);
for(int i = 0;i<cat.Count;i++)
{
if (cat[i].table_status == "Available")
{
color = "Green";
this.BindingContext = color;
}
else if (cat[i].table_status == "Unavailable")
{
color = "Black";
this.BindingContext = color;
}
}
我将颜色绑定(bind)到 .xaml
<StackLayout HorizontalOptions="FillAndExpand" BackgroundColor="{Binding color}">
Best Answer-推荐答案 strong>
首先,您只能绑定(bind)到公共(public)属性
public Color BGColor { get; set; }
BindingContext = this;
然后在您的代码中,设置该属性的值 - 您可能还需要在您的类上实现 INPC
for(int i = 0;i<cat.Count;i++)
{
if (cat[i].table_status == "Available")
{
BGColor = Color.Green;
}
else if (cat[i].table_status == "Unavailable")
{
BGColor = Color.Black;
}
}
关于c# - Xamarin.Forms 如何根据条件绑定(bind)背景颜色,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/52406244/
|