gpt4 book ai didi

c# - Switch Cell 代码中的 Xamarin.Forms DataBinding

转载 作者:行者123 更新时间:2023-11-30 19:39:52 26 4
gpt4 key购买 nike

我有以下对象:

public class Notification : INotifyPropertyChanged
{
private bool _trafficNot;
public bool TrafficNot
{
get { return _trafficNot; }
set {
if (value.Equals(_trafficNot))
return;
_trafficNot = value;
OnPropertyChanged();

}
}

private bool _newsNot;
public bool NewsNot
{
get { return _newsNot; }
set
{
if (value.Equals(_newsNot))
return;
_newsNot = value;
OnPropertyChanged();
}
}

public event PropertyChangedEventHandler PropertyChanged;

void OnPropertyChanged([CallerMemberName]String propertyName=null)
{
var handler=PropertyChanged;
if(handler != null)
{
handler(this, new PropertyChangedEventArgs(propertyName));
}
}

}

我从这样的对象中获取数据://根据数据库中存储的内容设置通知对象 Notification通知=新通知 {

        TrafficNot = uInfo.NotificationTraffic,
NewsNot = uInfo.NotificationNews
};

我想将数据绑定(bind)到这些开关

    TableView tableView = new TableView
{
BindingContext = notification,
Intent = TableIntent.Form,
Root = new TableRoot
{
new TableSection
{
new SwitchCell
{
Text = "News",
BindingContext = "NewsNot"

},
new SwitchCell
{
Text = "Traffic",
BindingContext = "TrafficNot"
},
new SwitchCell
}
}
};

我还需要做什么来绑定(bind)它?

干杯

最佳答案

您根本没有绑定(bind) View 属性。而不是将文本分配给 BindingContxt 和 Text 属性,您应该绑定(bind)这些 Text 属性,即:

var sc = new SwitchCell();
sc.SetBinding(SwitchCell.TextProperty, new Binding("NewsNot"));

BindingContext 是您绑定(bind)其属性时的源对象。另见 DataBinding docs .

关于c# - Switch Cell 代码中的 Xamarin.Forms DataBinding,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25985857/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com