2013-03-22 4 views
6

가득 콤보 상자의 SelectedValue의 값을 얻을 수 있습니다 :어떻게 우리는이 같은 사전이 사전

var dictionary = new Dictionary<int, int> { { 0, 100 }, { 1, 202 }, { 2, 309 }, }; 

등을 값의 부지에. 이런 식으로 comboBox에 바인더 제본 사전 : 나는 comboBox.Text 수동으로 입력 값으로 만 작동하는 경우 나,이 콤보 상자 selectedvalue을 얻을 수있는 방법 궁금 해요

comboBox1.ItemsSource = dictionary; 
comboBox1.DisplayMemberPath = "Value"; 

이 코드 :

string value = comboBox1.SelectedValue.ToString(); 

반환 값 [1, 202]처럼, 나는 명확한 int TValue "202"가 필요합니다. 나는 비슷한 질문을 찾을 수 없어서 거기에 묻고 그 대답이 다른 누군가에게 유용 할 수 있기를 바랍니다.

string value = ((KeyValuePair<int, int>)comboBox1.SelectedValue).Value.ToString(); 

그러나 거기 brakepoint을 넣어 SelectedValue 정말 유형을 확인해야합니다 : 당신이 KeyValuePair<int, int>SelectedValue 캐스팅이 같은

+0

'사전 또는 Dictionaryt '을 사용하여 'BindingSource'를 만드는 방법을 배우는 대신이 방법을 사용하십시오. http://stackoverflow.com/questions/6412739/binding-combobox-using-dictionary-as-the- 데이터 소스 – MethodMan

답변

8

보인다.

소스 컬렉션이 Dictionary<int, int>이고 [1, 202]SelectedValue.ToString()의 출력 문자열 때문에 KeyValuePair<int, int>이라고 가정합니다.

+0

Brilliant! 위대한 작품, 대단히 감사합니다 !! 나는 당신의 대답을 가능한 빨리 받아 들일 것입니다. – Mike

+0

감사합니다 이것이 무엇을 필요로합니다 .... – Armaan

관련 문제