我有以下课程
public class G481Vars
{
public double Disp { get; set; }
public double IniVel { get; set; }
public double FinVel { get; set; }
public double Acc { get; set; }
public double Time { get; set; }
public double Force { get; set; }
public double Mass { get; set; }
public double Weight { get; set; }
public double Press { get; set; }
public double Dens { get; set; }
public double Energy { get; set; }
public double Area { get; set; }
public double Vol { get; set; }
}
我已经列出了这样的清单:
List<G481Vars> G481List = new List<G481Vars>();
将输入框数组定义为
HtmlInputText[] G481Inputs = new HtmlInputText[13]
{
G481Disp_Txt, G481IniVel_Txt, G481FinVel_Txt, G481Acc_Txt,
G481Time_Txt, G481Force_Txt, G481Mass_Txt, G481Weight_Txt,
G481Press_Txt, G481Dens_Txt, G481Energy_Txt, G481Area_Txt,
G481Vol_Txt
};
如何做这样的事情
for (int i = 0; i < 13; i++)
{
if (G481Inputs[i].Value == "")
{
G481List[i] = 0;
}
else
{
//Other code here
}
}
将0
分配给列表索引i
中的对象?
我得到的错误是“无法隐式将类型'int
'转换为....G481Vars
”
答案 0 :(得分:3)
您无法为对象设置int
值。您的列表中有G481Vars
类型的对象,因此您需要添加此类型的实例。
例如:
而不是:
G481List[i] = 0;
做类似的事情:
// All double values are 0 at default
G481List[i] = new G481Vars();
// Initialize values directly
G481List[i] = new G481Vars() { Disp = 1, IniVel = 5, ...};
或者如果要从列表中删除值,则需要在for循环后使用以下代码执行此操作:
myList.Remove(myInstance);