如何在C#中的文本框末尾添加单位

时间:2016-03-19 21:31:28

标签: c#

我从这里找到这个代码,在输入数字后在文本框的末尾添加一个像分钟或千克的单位。在C#

private void CowAgetxtBox_Leave(object sender, EventArgs e)
    {
        {
            CowAgetxtBox.Text = CowAgetxtBox.Text + " Month";
        }
    }

    private void CowAgetxtBox_Enter(object sender, EventArgs e)
    {
        {
            CowAgetxtBox.Text = CowAgetxtBox.Text.Replace(" Month", "");
        }
    }

但我不知道如何获得这个数字, 我使用此代码,但它不起作用

int Age = int.Parse(CowAgetxtBox.Text);

5 个答案:

答案 0 :(得分:4)

实际上将单元放在文本框中并不是一个好主意,这会在数据验证,本地化,转换,...​​...中引起很多问题。 最好将它放在文本框之外:)

答案 1 :(得分:1)

当用户专注于文本框时,您只需要执行与您类似的过程。

int Age = int.Parse(CowAgetxtBox.Text.Replace(" Month", ""));

这将完成工作。

答案 2 :(得分:0)

似乎

         CowAgetxtBox.Text

此语句包含除了数字之外的值,这就是为什么这个语句

        int Age = int.Parse(CowAgetxtBox.Text);

无法正常工作从第一个功能中删除“月”

答案 3 :(得分:0)

您可以添加如下属性:

int Age {
get { return Convert.ToInt32(CowAgetxtBox.Text.Replace(" Month", ""));     }
}

答案 4 :(得分:0)

如果单位标签发生变化,这可能会在更多情况下适用于您:

int Age = int.Parse(CowAgetxtBox.Text.Split(' ')[0]);