PDA

View Full Version : چند سوال در مورد textbox ؟



aradrobo
جمعه 01 دی 1391, 13:21 عصر
1- چگونه می توان کاری کرد که در تکس باکس بصورت پیشفرض عدد 00 نمایش داده شود و وقتی که کاربر عددی در این تکس باکس وارد می کند ، نتواند این 00 ابتدایی را پاک کند .

2- چگونه میشود که به این 00 که ابتدا نوشته شده ، محدود کرد که وقتی کاربر عددی وارد می کند ، ابتدای عدد وارد شده 0 نباشد ، یعنی نتواند این مقدار را نمایش دهد : 000

morteza271
جمعه 01 دی 1391, 13:31 عصر
با استفاده از رویدادهای KeyDown - KeyPress و TextChanged میتونید به راحتی این کار رو انجام بدین.
باید چک کنید کاراکتری که زده شده مجاز هست یا نه.
در صورتی که مجاز نبود با این دستور میتونید کاری کنید که کاراکتر تایپ نشه :
e.Handled = true;

aradrobo
جمعه 01 دی 1391, 13:47 عصر
با استفاده از رویدادهای KeyDown - KeyPress و TextChanged میتونید به راحتی این کار رو انجام بدین.
باید چک کنید کاراکتری که زده شده مجاز هست یا نه.
در صورتی که مجاز نبود با این دستور میتونید کاری کنید که کاراکتر تایپ نشه :
e.Handled = true;

خوب من هم اینو می دونم . سوالم ایجاست که دستور شرطی آن را چگونه بنویسم ؟

aradrobo
یک شنبه 03 دی 1391, 14:22 عصر
اگر کسی در این زمینه اطلاعاتی دارد و می تواند به ما کمک کند لطفاً دریغ نفرمایید .

morteza271
یک شنبه 03 دی 1391, 16:37 عصر
خوب من هم اینو می دونم . سوالم ایجاست که دستور شرطی آن را چگونه بنویسم ؟
public Form1()
{
InitializeComponent();

textBox1.Text = "00";
}

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (textBox1.Text == "00")
{
if (e.KeyChar == '0')
e.Handled = true;
}
}

private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text.Length <= 2 && textBox1.Text != "00")
{
textBox1.Text = "00";
textBox1.Select(2, 0);
}
}
ابتدا در سازنده فرم یا رویداد لود فرم و یا در دیزان خاصیت Text تکست باکس رو برابر با 00 قرار دهید.
بعد با استفاده از دو رویدادی که گذاشتم میتونید این دو موردی که در پست اول گفتین رو کنترل کنید.

aradrobo
یک شنبه 03 دی 1391, 18:08 عصر
public Form1()
{
InitializeComponent();

textBox1.Text = "00";
}

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (textBox1.Text == "00")
{
if (e.KeyChar == '0')
e.Handled = true;
}
}

private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text.Length <= 2 && textBox1.Text != "00")
{
textBox1.Text = "00";
textBox1.Select(2, 0);
}
}
ابتدا در سازنده فرم یا رویداد لود فرم و یا در دیزان خاصیت Text تکست باکس رو برابر با 00 قرار دهید.
بعد با استفاده از دو رویدادی که گذاشتم میتونید این دو موردی که در پست اول گفتین رو کنترل کنید.

خیلی خیلی متشکرم . دقیقاً همین برنامه رو می خواستم .

SEZAR.CO
یک شنبه 03 دی 1391, 18:09 عصر
با عرض سلام
من منظور شماره 2 شمارو نفهمیدم

aradrobo
یک شنبه 03 دی 1391, 19:25 عصر
به جوابی که دوستمون دادند نگاه کنید . منظور رو می فهمید .