CheckedListBoxがあります。データソースとして、私自身のクラスvar dataSource3 = new BindingList<Modells.Person>();
のBindingListを使用します。CheckedListBoxの項目をリスト内に存在する場合に選択します。
その後、私はアルファベット順に並べ替えます。
var sorteddataSource3 = new BindingList<Modells.Person>(dataSource3.OrderBy(x => x.lastname).ToList());
そしてそれらを結合する。
clbPerson3.DataSource = sorteddataSource3;
clbPerson3.DisplayMember = "lastname";
clbPerson3.ValueMember = "idPerson";
私自身のクラスは、このように構成されていますIRestResponse<List<Modells.Person>> selectedPersons = client.Execute<List<Modells.Person>>(request);
そして今、タスクは次のとおりです。
public class Person
{
public int idPerson { get; set; }
public string firstname { get; set; }
public string lastname { get; set; }
public string phonenumber { get; set; }
public string mailadress { get; set; }
public int idCompany { get; set; }
}
は今、私はRestRequestから取得する「人」、の他のリストを持っていますCheckedListBoxでselectedPersons
の人物をチェックします。sorteddataSource3
。この時点で
私の解決策は次のとおりです。
for (int i = 0; i < selectedPersons.Data.Count; i++)
{
if (selectedPersons.Data[i].idCompany.Equals(comboBox3.SelectedValue))
{
int index3 = clbPerson3.Items.IndexOf(selectedPersons.Data[i].idPerson);
clbPerson3.SetItemChecked(index3, true);
}
}
まず人がにCheckedListBoxに表示されている場合、私は確認してください。 その後、私は人のインデックスを取得しようとします。そして、ここには私の間違いがあります。 index3
は常に-1
です。
CheckedListBoxで項目を設定するソリューションを探しています。
)__selecting__と__checking__が混在しているようです。 – TaW