سلام مجدد به دوستان عزیز .
این مطلب تقریبا تخصصی به نظر میاد و بیشتر به درد برنامه نویسای ویندوز که با زبان سی شارپ c# کار می کنن میخوره .
چون خودم سر این قضیه ( نمایش اعداد به صورت سه رقمی مثلا در TextBox هایی که مبلغ رو نشون میدن ) خیلی به مشکل خورده بودم
احساس کردم بد نباشه این تجربه رو در اختیار سایر دوستان قرار بدم تا وقتشون هدر نره .
در wpf در نهایت کدی شبیه به تصویر زیر خواهید داشت .
خوب اول از همه یه TextBox بندازید داخل فرمتون .
بعد روی رویداد TextChange(مقدار مشابه رو در ویندوز فرم و wpf خودتون پیدا کنید) تکست باکستون ۲بار کلیک کنید .
بعد کد های زیر رو داخل بلوک کپی کنید :
if(this.Text == "") { this.Text = "0"; } this.Text = Int64.Parse(this.Text.Replace(",", "")).ToString("n0"); this.SelectionStart = this.Text.Length;
توضیح کد ها:
داخل شرط if چک می کنیم اگه مقدار داخل TextBox خالی بود برابر با عدد ۰ قرار میدیم که به خطا نخوره !
بعد شرط هم با تابع Replace مقدار داخل تکست باکس رو چک می کنیم و به صورت سه رقمی جداش می کنیم .
در خط آخر هم نشان گر ورود تکست باکس رو به آخر خط می بریم تا اعداد درست نمایش داده بشه .
نکته : یادتون باشه خودتون در event مربوط به keypress تکست باکستون چک کنین مقدار وارد شده حتما عدد باشه در غیر این صورت با خطا مواجه میشین .
خوب اینم یکی دیگه از آموزش ها .
امیدوارم مفید باشه .
مورد یا سوالی بود همینجا کامنت بذارین . بدرود