【发布时间】:2019-09-25 10:30:06
【问题描述】:
我有 listview,我需要根据 viewmodel.so 的条件设置 stacklayout 水平选项值。所以如何设置它
私有字符串水平选项;
public string HorizontalOption
{
get => horizontalOption;
set
{
horizontalOption = value;
OnPropertyChanged(nameof(HorizontalOption));
}
}
public async Task FetchThreadUserData()
{
sing (HttpClient hc = new HttpClient())
{
try
{
IsBusy = true;
var jsonString = await hc.GetStringAsync(url);
var obj = JsonConvert.DeserializeObject<MessageList>(jsonString);
foreach (var user in obj.messages)
{
string authorIdStr = user.authorId;
if(authorIdStr==userId)
{
HorizontalOption = "StartAndExpand";
}
else if(authorIdStr!=userId)
{
HorizontalOption = "EndAndExpand";
}
list.Add(user);
}
}
and binding it like this in Xaml
<StackLayout HorizontalOptions="{Binding HorizontalOption}" >
but it is not working .
【问题讨论】:
-
绑定前检查属性类型。