如何从c#中的datalist获取价值?

时间:2015-10-17 10:02:00

标签: c# asp.net vb.net datalist

我正在尝试从DataList中检索一个值,以便在某个公式中使用它

所以我尝试了这段代码,并将其包含在OnClick按钮事件中:

float fQ = float.Parse(Qtytb.Text);
float ftotal;
float fitem = float.Parse(pricelst.SelectedItem.ToString());
ftotal = fQ * fitem;
totaltb.Text = ftotal.ToString();

但是此时它给了我空指针异常

( float fitem = float.Parse(pricelst.SelectedItem.ToString()); )

我怎样才能让它发挥作用?

3 个答案:

答案 0 :(得分:1)

添加以下验证

if(pricelst.SelectedItem != null)
{
  //your code....

}

答案 1 :(得分:0)

您需要检查columnDefs: [ { targets: [ 1], visible: false, searchable: false }, { targets: [ 3], render: function ( data, type, full, meta ) { if(type === 'display') { if(data==true){ // add class 'details-secret' to current node td return ""; } } return data; } }, pricelst是否为空并正确处理这些情况。例如,您可以使用pricelst.SelectedItem或空合并运算符float.TryParse(...)

举个例子:

鉴于课程

??

像这样检查null:

Foo pricelst = new Foo();

   private class Foo
   {
       public string SelectedItem { get; set; }
   } 

答案 2 :(得分:0)

var selectedItemValue =  pricelst.SelectedItem == null ? "0" : pricelst.SelectedItem.ToString();
var selectedItemFloat = float.Parse(selectedItemValue);
var fQ = float.Parse(Qtytb.Text);
var ftotal = fQ * selectedItemFloat;
totaltb.Text = ftotal.ToString();
相关问题