Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 输入字符串的格式不正确_Wpf - Fatal编程技术网

Wpf 输入字符串的格式不正确

Wpf 输入字符串的格式不正确,wpf,Wpf,错误消息: 输入字符串的格式不正确 在这两种情况下 private void btnComprobar_Click(object sender, RoutedEventArgs e) { Inventario inv = new Inventario(); inv.beneficio = txtBeneficio.Text; inv.idProducto = txtIdProducto.Text; inv.idProveedor = txtIdProveedor

错误消息: 输入字符串的格式不正确

在这两种情况下

private void btnComprobar_Click(object sender, RoutedEventArgs e)
{
    Inventario inv = new Inventario();

    inv.beneficio = txtBeneficio.Text;
    inv.idProducto = txtIdProducto.Text;
    inv.idProveedor = txtIdProveedor.Text;
    inv.precioEntrada = txtprecioEntrada.Text;

    //errores en la conversion de precioSalida y cantidad
    inv.precioSalida = double.Parse(txtPrecioSalida.Text);

    inv.cantidad = int.Parse(txtCantidad.Text);

    inv.clase = txtClase.Text;
    switch (txtClase.Text)
    {
        case "1":
            inv.clase = "FUTBOL";
            break;
        case "2":
            inv.clase = "RUNING";
            break;
        case "3":
            inv.clase = "BALONMANO";
            break;
        default:
            inv.clase = "1";

            break;

    }
    inv.descripcion = txtDescripcion.Text;
    inv.estado = txtEstado.Text;

    databaseConector.instance.comprobarProducto(dtGConsultas, inv);
}

如果
string
参数无法解析为
double
值,则对
double.Parse
的调用将引发异常。与
int.Parse
相同

您可以使用
double.TryParse
/
int.TryParse
方法尝试解析值:

Inv.precioSalida = double.Parse (txtPrecioSalida.Text);

显然,TXPRECIOSALIDA文本框中的字符串无法转换为双精度。文本框中的值是什么?我有几个文本框,因为过滤器在出错时的值是空的。你是说txtpricosalida.text是空的吗?如果没有异常,您无法将null传递给double.Parse方法。如果是这样,我用tryParse尝试了它,但我是一个新手,没有解决它。如果它非常有用,我仍然需要一些东西,因为没有错误,但作为过滤器的一部分,搜索是使用null值完成的,没有找到任何结果,但非常感谢。
private void btnComprobar_Click(object sender, RoutedEventArgs e)
{
    Inventario inv = new Inventario();

    inv.beneficio = txtBeneficio.Text;
    inv.idProducto = txtIdProducto.Text;
    inv.idProveedor = txtIdProveedor.Text;
    inv.precioEntrada = txtprecioEntrada.Text;

    //errores en la conversion de precioSalida y cantidad
    double precioSalida;
    if(double.TryParse(txtPrecioSalida.Text, out precioSalida))
        inv.precioSalida = precioSalida

    int cantidad;
    if(int.TryParse(txtCantidad.Text, out cantidad))
        inv.cantidad = cantidad;

    inv.clase = txtClase.Text;
    switch (txtClase.Text)
    {
        case "1":
            inv.clase = "FUTBOL";
            break;
        case "2":
            inv.clase = "RUNING";
            break;
        case "3":
            inv.clase = "BALONMANO";
            break;
        default:
            inv.clase = "1";

            break;

    }
    inv.descripcion = txtDescripcion.Text;
    inv.estado = txtEstado.Text;

    databaseConector.instance.comprobarProducto(dtGConsultas, inv);
}