检测小数点分隔符我必须检测当前窗口设置中的小数点分隔符。我使用visualstudio2010,Windows窗体。特别是,如果DecimalSeparator是一个逗号,当用户在textbox1中输入一个点时,我需要在textbox2中出现零。我尝试使用此代码,但它不起作用:privatevoidtbxDaConvertire_KeyPress(objectsender,KeyPressEventArgse){如果(uiSep.Equals(",")){while(e.KeyChar==(char)46){tbxConvertito.Text="0";我也试过这个代码,但它不起作用:privatevoidtbxDaConvertire_KeyPress(objectsender,KeyPressEventArgse){NumberFormat.NumberDecimalSeparator;如果(uiSep.Equals(",")){如果(e.KeyChar==(char)46){tbxConvertito.Text="0";}}}解决方案:privatevoidtextBox1_KeyPress(objectsender,KeyPressEventArgse){chara=Convert.ToChar(Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator);如果(e.KeyChar==a){e.Handled=true;textBox1.Text="0";}}希望有所帮助。这样,当你点击“。"or","你的文本框是0.KeyChar==a){e.KeyChar='0';}实际上你应该使用Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator而不是CultureInfo.CurrentUICulture.NumberFormat.NumberDecimalSeparator使用第二个给你操作系统默认值,它可能与登录到此PC的特定用户帐户的用户区域设置不同,你不应该使用while循环,我认为它会冻结应用程序,如果相反,问题可能出在上面如果内容对你有用并且需要了解更多C#学习教程的朋友,希望大家多多关注。本文整理自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除转载请注明出处:
