繁体   English   中英

标签文本中出现错误“输入字符串格式不正确”

[英]Error 'Input string was not in a correct format' in Label Text

我需要将一个标签字符串转换为int,再将另一个标签字符串转换为float,这样我才能获得包含金额和单价的总价格。

这是我尝试过的:

  private void EntQtde_TextChanged(object sender, TextChangedEventArgs e)
    {
        /**/
        if(entRSVenda.Text != null)
        {
            float RSVenda = float.Parse(entRSVenda.Text);
            int Qtde = int.Parse(entQtde.Text);
            lblValorTot.Text = (Qtde * RSVenda).ToString();
            //lblValorTot.Text = ((float.Parse(entRSVenda.Text)) * int.Parse(entQtde.Text)).ToString();
        }

    }



  private void EntRSVenda_TextChanged(object sender, TextChangedEventArgs e)
    {
        /**/

        if (entQtde.Text != null)
        {
            float RSVenda = float.Parse(entRSVenda.Text);
            int Qtde = int.Parse(entQtde.Text); 
            //lblValorTot.Text = ((float.Parse(entRSVenda.Text)) * int.Parse(entQtde.Text)).ToString();
            lblValorTot.Text = (Qtde * RSVenda).ToString();


        }

    }

当一个标签文本更改时,它应该重新进行数学运算,但是我尝试的所有操作均不起作用。

编辑:标签没有任何文本,它得到用户输入

<Label Text="" x:Name="lblValorTot"/>


<Entry x:Name="entQtde" Placeholder="Quantidade" Keyboard="Numeric" TextChanged="EntQtde_TextChanged"/>

<Entry x:Name="entRSVenda" Placeholder="Valor unitário (R$)" TextChanged="EntRSVenda_TextChanged" />

可以是占位符“ R $”吗?

我们还没有看到任何输入示例,但是希望下面的代码片段可以帮助您启动并运行:

    if (entQtde.Text != null)
    {
        int Qtde;
        bool canParse = int.TryParse(entQtde.Text, out Qtde); 

        if(canParse){
           lblValorTot.Text = (Qtde * RSVenda).ToString();
        }else{
           // invalid input - do something!
        }


    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM