안녕하세요, bindingsource에 바인딩하는 사전이 있습니다. 목록 상자에 키를 표시하고 싶습니다. 그래서 바인딩 소스를리스트 박스에 추가하고 displaymember를 "Key"로 설정합니다. 이것은 작동하지 않습니다.C# dictionary가 목록 상자에 바인드되었습니다.
bs_directions.DataSource = bs_measurements;
bs_directions.DataMember = "zielwertdict"; //(=Dictionary<string,list<object>>)
listBox3.DataSource = bs_directions;
listBox3.DisplayMember = "Key";
UPDATE : bs_measurements 다른 목록 상자에 바인딩 다른 목록입니다 그것은 나에게 대신 키 문자열의 사전 있으며, toString ... 사용
코드를 제공합니다. 프로젝트를 빌드 할 때 listBox3은 사전의 키를 표시합니다. bs_measurement에 바인딩 된 목록 상자의 항목을 변경하면 listbox3이 사전을 표시합니다 .Tostring() 작업 ... 매우 이상한 작업 ...
업데이트 2 : bs_measurment 목록에 포함 된 개체는 사전 zielwerdict)와 해시 테이블 : 위의 예 bs_directions.DataMember
에서
public class bs_measurementOBject
{
public string name;
public SortedDictionary<string,list>object>> zielwertlist;
public Hashtable block;
}
당신은 즉, 새로운 BindingSource에에 데이터 소스를 설정해야 할 수도 있습니다; bs_directions.DataSource = 새 BindingSource (bs_measurements, null); –
이것은 아무 것도 바뀌지 않습니다. – benst