PDA

View Full Version : حرفه ای: تايپ فقط عدد در سلول هاي مورد نظر گريد ويو



dab_hrd
پنج شنبه 04 خرداد 1391, 08:00 صبح
با سلام
دوستان من در حال طراحي يك فاكتور هستم و مي خواهم
1- فرضا" در ستون كد كالا فقط عدد تايپ شود
2-چگونه مي توان در سلول مورد نظرم تاريخ شمسي دريافت كنم من از كامپونتهاي دريافت تاريخ شمسي استفاده مي كنم .
لطفا" مرا راهنمايي بفرماييد .
با تشكر

dab_hrd
پنج شنبه 04 خرداد 1391, 11:09 صبح
خواهشا" يك نفر جواب بدهد.

nasimsaba
پنج شنبه 04 خرداد 1391, 12:37 عصر
سلام.توی گریدویو یک خاصیتی به نام CellValueChanged وجود داره کهبعد از اینکه مقدار یک سلول رو تغییر میدی میتونی مقدارشو چک کنی.البته مثل TextChange مال تکس باکس نیست که بشه آنی مقدارشو چک کرد.امیدوارم بدردت بخوره

hgh.just.hony
پنج شنبه 04 خرداد 1391, 12:39 عصر
// Boolean flag used to determine when a character other than a number is entered.
private bool nonNumberEntered = false;
// Handle the KeyDown event to determine the type of character entered into the control.
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
// Initialize the flag to false.
nonNumberEntered = false;
// Determine whether the keystroke is a number from the top of the keyboard.
if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
{
// Determine whether the keystroke is a number from the keypad.
if (e.KeyCode < Keys.NumPad0 || e.KeyCode > Keys.NumPad9)
{
// Determine whether the keystroke is a backspace.
if (e.KeyCode != Keys.Back)
{
// A non-numerical keystroke was pressed.
// Set the flag to true and evaluate in KeyPress event.
nonNumberEntered = true;
}
}
}
}

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (nonNumberEntered == true)
{
MessageBox.Show("Please enter number only...");
e.Handled = true;
}
}



کار نیکو کردن از پرکردن است عزیز (http://www.google.com/#hl=en&biw=1366&bih=665&sclient=psy-ab&q=just+enter+numbers+in+textbox+in+c%23&oq=just+enter+numbers+in+textbox+in+c%23&aq=f&aqi=&aql=&gs_l=hp.3...2038.11591.0.11972.35.26.0.0.0.0.1585. 10982.6-3j4j2.9.0...0.0.Hbmu8OJ6lco&pbx=1&bav=on.2,or.r_gc.r_pw.r_qf.,cf.osb&fp=7e31dd1cd0ae5982) :D

منبع : :لبخند:
(http://stackoverflow.com/questions/5028673/c-sharp-numeric-only-textbox-control)

nasimsaba
پنج شنبه 04 خرداد 1391, 12:46 عصر
دوست عزیز hgh.just.hony (http://barnamenevis.org/member.php?254617-hgh.just.hony)
این کدی که شما گذاشتی درسته ولی برای چک کردن مقادیر وارد شده به تکس باکس هستش.ولی دوستمون می خوان مقادیر وارد شده به سلول های دیتاگرید ویو رو چک کنن.

dab_hrd
پنج شنبه 04 خرداد 1391, 13:04 عصر
ضمن تشكر
مشكل فقط تايپ عدد تا حدي حل شد اما من چگونه مي توانم persian date time picker را در يك سلول جهت دريافت تاريخ فعال كنم
خواهشا" راهنمايي بفرماييد

omran.av
پنج شنبه 04 خرداد 1391, 13:14 عصر
سلام
دوست عزیر شما می توانید از خاصیت CellValidating استفاده کنید.
این هم یه کد نمونه:
private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
dataGridView1.Rows[e.RowIndex].ErrorText = "";
int newInteger;

// Don't try to validate the 'new row' until finished
// editing since there
// is not any point in validating its initial value.
if (dataGridView1.Rows[e.RowIndex].IsNewRow || e.ColumnIndex != dataGridView1.Columns[شماره ستون کد کالا].Index) { return; }
if (!int.TryParse(e.FormattedValue.ToString(),
out newInteger) || newInteger < 0)
{
e.Cancel = true;
dataGridView1.Rows[e.RowIndex].ErrorText = "the value must be a non-negative integer";
}
}

dab_hrd
شنبه 06 خرداد 1391, 09:50 صبح
ضمن تشكر از تمامي دوستان بابت شركت در اين تاپيك و راهنمايي هاي مفيدشان
دوستان مشكل تايپ فقط عدد به لطف شما حل شد اما حالا مي خواهم كه در يك ستون date time picker را فعال كنم و تاريخ را از كاربر دريافت كنم اين مشكل را چگونه حل كنم .
با تشكر

dab_hrd
شنبه 06 خرداد 1391, 12:19 عصر
خواهشا" يك نفر در مورد دريافت تاريخ در يكي از ستونهاي گريد راهنمايي بفرمايد .
با تشكر

dab_hrd
شنبه 06 خرداد 1391, 14:17 عصر
خواهشا" يك نفر در مورد دريافت تاريخ در يكي از ستونهاي گريد راهنمايي بفرمايد .
با تشكر

dab_hrd
یک شنبه 07 خرداد 1391, 08:04 صبح
خواهشا" يك نفر در مورد دريافت تاريخ در يكي از ستونهاي گريد راهنمايي بفرمايد .
با تشكر