2013-03-20 2 views
2

Я хочу найти значение в списке <> но я не получаю целочисленное значение. Вот мой код, который я хочу найти в спискепоиск в списке <>

private void txtnapsaserach_TextChanged(object sender, EventArgs e) 
{ 
    try 
    { 
     //decimal find = decimal.Parse(txtnapsaserach.Text); 

     if (decimal.Parse(txtnapsaserach.Text) > 0) 
     { 
     List<NapsaTable> _napsatabs = this.napsaTableBindingSource.List as List<NapsaTable>; 
     this.napsaTableBindingSource.DataSource = 
     _napsatabs.Where(p =>p.NapsaRate.Equals(txtnapsaserach.Text)).ToList(); 

     } 
    } 
    catch (Exception Ex) 
    { 
    } 
} 

любое решение для меня. Потому что это работает для меня, когда я пытаюсь найти строковое значение.

ответ

1
private void txtnapsaserach_TextChanged(object sender, EventArgs e) 
{ 
    float value; 
    if (!float.TryParse(txtnapsaserach.Text, out value)) 
     return; // return if text cannot be parsed as float number 

    if (value > 0) 
    { 
     var napsatabs = napsaTableBindingSource.List as List<NapsaTable>; 
     napsaTableBindingSource.DataSource = 
      napsatabs.Where(p =>p.NapsaRate == value).ToList(); 
    } 
} 

попробовать это

1

Я хочу найти значение в списке <> но я не получаю целочисленное значение.

Ваш p.NapsaRate либо целочисленный тип или число с плавающей точкой, (возможно, десятичный) Преобразование txtnapsaserach.Text в десятичное значение, а затем сравнить его в том, где положение.

decimal rate = 0; 
if(!decimal.TryParse(txtnapsaserach.Text), out rate) 
{ 
//Invalid number in textbox 
} 

this.napsaTableBindingSource.DataSource = 
     _napsatabs.Where(p =>p.NapsaRate == rate)).ToList(); 

если p.NapsaRate имеет типа двойной или поплавок вы можете разобрать их соответствующим образ с помощью Double.TryParse или Double.Parse и т.д.

причины вы не получаете ошибку, что вы используете object.Equals метод для сравнения десятичного значения со строкой. Вы всегда должны использовать == для сравнения значений типов значений.

 Смежные вопросы

  • Нет связанных вопросов^_^