【发布时间】:2018-07-30 21:50:34
【问题描述】:
所以我试图从字符串中删除数据,因为我在 WPF 中有一个看起来像 __,___ 的“预设”输入,现在用户必须输入类似 30,589 的内容,但是当用户只输入 @ 987654330@ 或50,它需要剥离其余部分(保留,)以适当地使输入值浮动。我现在的代码是这样的;
if (inp_km.Text == "__,___")
{
team_results.results[inp_tour_part.SelectedIndex].km =
float.Parse("00,000",
NumberStyles.AllowDecimalPoint,
CultureInfo.GetCultureInfo("nl-NL")); // Give the new value
}
else
{
team_results.results[inp_tour_part.SelectedIndex].km =
float.Parse(inp_km.Text,
NumberStyles.AllowDecimalPoint,
CultureInfo.GetCultureInfo("nl-NL")); // Give the new value
}
但是这段代码只是检查输入是否留空...有人可以帮帮我吗?
编辑
所以我添加了一个屏幕,这是用户获得的输入布局;
你可以看到,输入是“预填充”的,这样一个输入的内容是一个“字符串”,所以,假设我在第一个输入中输入了 5;
那么值(在 C# 中由 input_name.Text 检索)是 5_:__,但这是一个“错误”值,您无法填写此类内容,我如何检查是否还有 : 或_ 在输入中。
另外,底部输入也是一样的,不过接下来需要完整填写。
【问题讨论】:
-
如果您能提供一个minimal reproducible example(控制台应用程序),其中包含至少 6 个样本输入以及每个样本输入的预期结果,那就太棒了。
-
您是否使用stackoverflow.com/a/1103822/34092 进行预设?
-
不使用该 SO 链接进行预设(掩码)。但我在“过滤”输入内容时遇到了麻烦。我也有时间 (HH:II) 有 : 作为掩码,但是当我得到输入并填写
5时,它返回5_:__我正在使用Extended.Wpf.Toolkit( github.com/xceedsoftware/wpftoolkit) -
你能详细说明你想要做什么吗?我根本不理解这部分:但是当用户只给出 5 或 50 时,它需要剥离其余部分(保留 ,)以正确地使输入值浮动。
-
我不明白默认值设置部分。为什么不把它设置为
0,0?你为什么要解析一个硬编码的字符串来获得一个浮点数?