【发布时间】:2020-02-10 19:21:26
【问题描述】:
我想在选择项目时添加复选标记图像。见下文
我尝试强制 IsChecked 为 true ,只是为了查看 img 。但似乎没有任何效果
xml
<ListView x:Name="EmployeeView" ItemSelected="EmployeeView_ItemTapped"
ItemsSource="{Binding Employees}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout>
<Image Source="calendar" IsVisible="{Binding IsChecked}"/>
<Label Text="{Binding name}" />
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
C#
ObservableCollection<Employee> employees = new ObservableCollection<Employee>();
public ObservableCollection<Employee> Employees { get { return employees; } }
EmployeeView.ItemsSource = employees;
// ObservableCollection allows items to be added after ItemsSource
// is set and the UI will react to changes
employees.Add(new Employee { name = "Rob Finnerty" });
employees.Add(new Employee { name = "Bill Wrestler" });
employees.Add(new Employee { name = "Dr. Geri-Beth Hooper" });
employees.Add(new Employee { name = "Dr. Keith Joyce-Purdy" });
employees.Add(new Employee { name = "Sheri Spruce" });
employees.Add(new Employee { name = "Burt Indybrick" , IsChecked=true });
void EmployeeView_ItemTapped(object sender, Xamarin.Forms.SelectedItemChangedEventArgs e)
{
if (e.SelectedItem != null)
{
var index = (Employee)e.SelectedItem;
index.IsChecked = true;
}
【问题讨论】:
-
为什么不直接将 Image 的 IsVisible 绑定到 IsChecked?触发器似乎没有必要。
标签: listview xamarin.forms expandablelistview listviewitem