نمایش نتایج 1 تا 1 از 1

نام تاپیک: تکست باکس با قابلیت جدا کردن سه رقم سه رقم ارقام

  1. #1

    تکست باکس با قابلیت جدا کردن سه رقم سه رقم ارقام

    سلام

    برای داشتن تکست باکسی با قابلیت جدا کردن ارقام میتوان کلاسی را از تکست باکس مشتق کرد و با override کردن متد OnTextChanged ارقام را جدا کرد.
    برای جدا کردن ارقام میتوان از فرمت دهی در تبدیل به رشته استفاده کرد. البته برای استفاده میبایست مقدار رشته را به عدد تبدیل کرده(()decimal.Pars) و سپس متد ToString را با فرمت N0 به رشته تبدیل کرد. 0 تعداد رقم اعشار را مشخص میکند.
    برای داشتن متن داخل تکست باکس بدون علامت جدا کننده ، یک پراپرتی به نام TextWithoutSeparator تعریف میکنیم که مقدار Text را بدون علامت جداکننده ( , ) به ما میدهد که میتوان برای محاسبات و یا همچنین ذخیره در دیتابیس از آن استفاده کرد.(این پراپرتی setter ندارد و نمیتوان مقدار به آن داد.)
    برای فعال کردن حالت جداکردن ارقام یک پراپرتی به نام SeparateNumber تعریف شده که میتوان از پنجره properties این خاصیت را true کرد(به طور پیشفرض false است)
    برای استفاده از این کلاس، بعد از اضافه کردن این کلاس به پروژه ، یک بار پروژه را دیباگ(Build) کنید سپس میتوانید از toolbox ابزار separateTextBox را استفاده کنید.

    using System;
    using System.Windows.Forms;
    public class separateTextBox : TextBox
    {
    private bool separateNumber;
    public bool SeparateNumber
    {
    get { return separateNumber; }
    set
    {
    separateNumber = value;
    SeparateTextWithDecimalSeparator();
    }
    }
    public string TextWithoutSeparator
    {
    get { return Text.Replace(",", string.Empty).Trim(); }
    }

    protected override void OnTextChanged(EventArgs e)
    {
    SeparateTextWithDecimalSeparator();
    }

    private void SeparateTextWithDecimalSeparator()
    {
    if (separateNumber)
    {
    if (!string.IsNullOrEmpty(this.TextWithoutSeparator))
    {
    this.Text = decimal.Parse(this.Text).ToString("N0");
    }
    }
    else
    {
    this.Text = Text.Replace(",", string.Empty).Trim();
    }
    this.Select(this.TextLength, 0);
    }
    }
    آخرین ویرایش به وسیله Mahmoud.Afrad : دوشنبه 19 فروردین 1392 در 05:30 صبح

تاپیک های مشابه

  1. سوال: ایجاد یک تکست باکس با قابلیت AutoComplete برای جستجو در یک جدول با 20000 رکورد با الگوریتمی بهینه.
    نوشته شده توسط iman_pc_love در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 4
    آخرین پست: دوشنبه 08 اسفند 1390, 13:12 عصر
  2. حرفه ای: درخواست تکست باکس با قابلیت نمایش کدها به صورت رنگی
    نوشته شده توسط Hadiir.net در بخش VB.NET
    پاسخ: 1
    آخرین پست: پنج شنبه 27 مرداد 1390, 16:48 عصر
  3. ساخت تکست باکس با قابلیت جداکردن ارقام
    نوشته شده توسط milad_esmaeili در بخش WPF
    پاسخ: 10
    آخرین پست: جمعه 14 مرداد 1390, 00:13 صبح
  4. پاسخ: 2
    آخرین پست: چهارشنبه 22 آبان 1387, 16:28 عصر
  5. یک edit با قابلیت جدا کردن سه رقمی اعداد
    نوشته شده توسط mortezakiaee در بخش برنامه نویسی در Delphi
    پاسخ: 4
    آخرین پست: چهارشنبه 10 بهمن 1386, 01:11 صبح

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •