2014-01-28 2 views
-1

이 상황C#에서 콤보 상자에서 float로서 가치를 얻을하는 방법

float sumofgradeintocradit = float.Parse(comboBox1.Text); 

에 제발 도와주세요 그러나 잡았 예외 말 "입력 문자열이 올바른 형식이 아닙니다."

무엇이 문제인가요? 콤보 상자에서 값을 가져 와서 float으로 저장하고 싶습니다.

+1

콤보 박스의 Content/HTML을 게시 할 수 있습니까? 텍스트에 유효한 float가 없습니다. – Mark

+2

사이드 노트,'sumofgradeintocradit'는'sumofgradeintocredit'이어야합니까? – Shiva

+2

'float.TryParse()'를 사용하여 combobox 텍스트가 유효한 float 값인지 확인할 수 있습니다 – davidsbro

답변

0

comboBox1.Text에 올바른 형식의 flot이 포함되어 있지 않습니다.

디버깅을 위해 값을 인쇄/추적하여 확인하십시오.

클라이언트 측 유효성 검사를 추가하여 올바른 형식인지 확인할 수 있습니다.

클라이언트 서버 응용 프로그램 인 경우 서버 측 유효성 검사를 추가하여 다음 MSDN에서 언급 한 예외를 처리하고 try parse 또는 catch를 사용하여 사용자에게 입력을 다시 묻도록 할 수 있습니다. http://msdn.microsoft.com/en-us/library/2thct5cb(v=vs.110).aspx

참조 : 내가 당신이라면 는 또한 구문 분석 숫자 문자열에 다음을 참조 http://msdn.microsoft.com/en-us/library/xbtzcc4w(v=vs.110).aspx

0

나는 이것을 시도 할 것이다 :

float sumofgradeintocradit ; 
float.TryParse(comboBox1.Text, out sumofgradeintocradit); 

이것은 combobox1.text가 있는지 여부를 확인합니다 유효한 float인지를 판별하고, 그렇다면 값을 sumofgradeintocradit에 할당합니다.

HTH

+0

감사하지만 그냥 진실하거나 거짓이라고 말하지만 0을 보여 주지만 콤보 상자에서 1 또는 2를 선택합니다. –

+0

그게 사실인지 거짓인지는 무엇입니까? 또한 두 번째 매개 변수로'out sumofgradeintocradit'을 가지고 있는지 확인하고 있습니까? – davidsbro

1

표시 텍스트를 부동 문자로 다시 변환하는 대신 사용자 정의 개체를 사용할 수 있습니다. 사용자 지정 개체를 사용하면 표시된 텍스트와 별도의 값을 가질 수 있습니다.

예 :

이 또한 ListView에 같은 다른 것들에 대한 작동
private class ComboItem 
{ 
    public string ItemText { get; set; } 
    public float ItemFloat { get; set; } 

    public ComboItem(string itemText, float itemFloat) 
    { 
     this.ItemText = itemText; 
     this.ItemFloat = itemFloat; 
    } 

    public override string ToString() 
    { 
     return this.ItemText; 
    } 
} 

private void AddItemsToComboBox 
{ 
    comboBox1.Items.Add(new ComboItem("One Point Two", 1.2f)); 
    comboBox1.Items.Add(new ComboItem("Three Point Four", 3.4f)); 
} 

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    var selectedFloat = ((ComboItem)comboBox1.SelectedItem).ItemFloat; 
    Debug.Print("Selected: " + selectedFloat); 
} 

.

관련 문제