我正在寫一個小小的財務相關的應用程序,並且希望確保我的用戶知道如何寫一個十進制值(使用DOT而不是COMMA。)WinForms,在Text.Replace後設置輸入光標在文本末尾
要確保輸入正確,我已按如下方式將控件提交給TextChanged事件。
// Remove people not knowing how to write decimals.
if (ExpenseValueTB.Text.Contains(',')) {
ExpenseValueTB.Text = ExpenseValueTB.Text.Replace(',', '.');
ExpenseValueTB.Focus();
}
現在,這絕對有效,但不幸的是輸入光標跳回到開頭。因此,如果有人想寫'15,96' ,他們最終書寫9615.
我環顧四周,但其他類似的問題是JS或PHP
非常感謝!
請注意,用戶可能想要輸入123,45.67,因此不是每個逗號都應該被點替換。 – Bolu
謝謝博盧,沒錯。雖然我的計劃是管理小家庭開支。我應該考慮一下,但對於未來的實施。基本上我應該只允許一個點,作爲浮點分頻器。 –