如何使用 DataSource 属性 访问 listView 中的数据绑定对象?

How to access data bound objects in listView using DataSource property?

所以我有这个 radclv_peças,它是一个填充有 Peça 自定义对象的 radCheckedListBox 控件,我正在尝试使用 SelectedItem 属性。问题是我不知道如何访问我使用 DataSource 属性 绑定的这些对象,如下所示:

radclv_peças.DataSource = Program.M_Wardrobe.ListaPeças;
radclv_peças.DisplayMember = "Name";
radclv_peças.ValueMember = "Id";

我需要根据 listView 当前选择的 Peça 更改 pictureBox 中的图像。这个想法是通过 ID 获取当前选择的项目,并将其与类型为 List<Peça>Program.M_Wardrobe.ListaPeças(MVC 模式)中包含的所有 Peça 对象进行比较,直到找到具有相同的 ID 并将其发送到 pictureBox。 那么,我如何使用 DataSource 属性?

访问 radCheckedListBox (Telerik) 中绑定的项目的 ID 或其他属性

Telerik 的 RadCheckedListBox.SelectedItem 有一个 DataBoundItem 属性。这表示 SelectedItem 绑定到 RadCheckedListBox 绑定到的对象列表之外的特定对象。通过在运行时将其转换为您的对象类型,您可以在事件处理程序中访问它的属性。

private void RadCheckedListBox_SelectedIndexChanged(object sender, EventArgs e)
{
    var selectedItem = radCheckedListBox.SelectedItem?.DataBoundItem as Peça;
}

获得物品后,您可以随心所欲地使用它。