PDA

View Full Version : سه رقم سه رقم جدا کردن اعداد در یک ستون datagridview



eletcomp
جمعه 05 اردیبهشت 1393, 14:42 عصر
با سلام بر عزیزان
من کدی میخوام که زمانی که عددی را در بانک ثبت کردیم به صورت 3 رقم 3 رقم جدا نشان بدهد و هم توی دیتاگرید ویو !!! ایا دیتاگرید ویو تنظیمات خاصی دارد ؟؟؟ یا کد نویسی باید حتما بشود؟؟
سپاس

eletcomp
جمعه 05 اردیبهشت 1393, 19:23 عصر
دوستان کسی بلد نیست!!
راستی چند نکته!!
زمانی که نقطه سه تا سه تا ارقام را جدا می کند!! ایا در هنگام عملیلت ریاصی باعث ارور نمی شود!!


سپاس

mortezasar
جمعه 05 اردیبهشت 1393, 19:36 عصر
سلام این کد برای جدا کردن در تکست باکس


private void textBoxX1_TextChanged(object sender, EventArgs e)
{
string s;
Int64 n;
try
{
s = textBoxX1.Text.Replace(",", "");
n = Convert.ToInt64(s);
textBoxX1.Text = n.ToString("#,#");
textBoxX1.Select(textBoxX1.Text.Length, 1);
}
catch (Exception ex)
{
}
}


واسه گرید ویو هم باید بری توی تنظیمات مربوط به اون ستون بعد قسمت فرمت این کد زو وارد کنی اگه بگی از چه گرید ویویی استفاده می کنی دقیق بهت میگم چون بعضی ها خودشون فرمت دارن و میتونی با چندتا کلیک تنظیم کنی

#,#

eletcomp
جمعه 05 اردیبهشت 1393, 19:45 عصر
ممنون: از گرید ویو عادی خود سی شارپ نسخه 2010 !!
سپاس

eletcomp
جمعه 05 اردیبهشت 1393, 20:11 عصر
واسه گرید ویو هم باید بری توی تنظیمات مربوط به اون ستون بعد قسمت فرمت این کد زو وارد کنی اگه بگی از چه گرید ویویی استفاده می کنی دقیق بهت میگم چون بعضی ها خودشون فرمت دارن و میتونی با چندتا کلیک تنظیم کنی
#,#

دوست عزیز :توی تنظمات دیتاگرید ویو چیزی به نام فرمت وجود نداره!!!! از کجا باید تنظیم کرد؟؟؟

در ضمن کد تکس باکس ات هم به درستی عمل کرد :ممنون:
ولی چند سئوال!!
1. ایا درهنگام عملیات ریاضی به مشکل بر نمی خورد؟؟ هنگام ضرب و جمع و........
2. اگر من بخوام کاری کن که 2 رقم 2 رقم اعداد را جدا کند :کدام قسمت کد را باید تغییر بدهم!!؟؟

سپاس

eletcomp
جمعه 05 اردیبهشت 1393, 22:27 عصر
1. ایا درهنگام عملیات ریاضی به مشکل بر نمی خورد؟؟ هنگام ضرب و جمع و........
2. اگر من بخوام کاری کن که 2 رقم 2 رقم اعداد را جدا کند :کدام قسمت کد را باید تغییر بدهم!!؟؟

واقعا کسی جواب سئوال من را بلد نیست!!!
من نمی تونم داده هایی را که به این شکل جدا می شوند را در بانک ذخیره کنم!! مخصوصا زمانی که نوع داده از نوع int باشه!!! پس این روش به درد محاسبات نمی خوره!!! کسی راه حل درست و حسابی سراغ داره؟؟؟

mortezasar
جمعه 05 اردیبهشت 1393, 22:33 عصر
کد تسکت باکس ها رو استفاده دارم می کنم درست هستش حواست به خاصیتش باشه
برای این ارور باید از استرینگ ریپلیس استفاده کنی

eletcomp
جمعه 05 اردیبهشت 1393, 22:43 عصر
ممنون داداش: ولی من مبتدی هستم!! لطفا بیشتر راهنمایی کن!! این استرینگ ریپلیس چی هست!! چطور باید استفاده کنم اش؟؟؟
لطفا نمونه کد قرار بدهید!!
سپاس

mortezasar
جمعه 05 اردیبهشت 1393, 22:50 عصر
عکس گرفتم واست که دقیق بدونی اینم واسه گرید ویو خود ویژوال استدیو

118353

118354


118355

118356


حله !
این کدم برای جدا کردن جدا کننده از رشته


string name = "13,000";
name = name.Replace(",", "");
MessageBox.Show(name);

eletcomp
جمعه 05 اردیبهشت 1393, 23:01 عصر
ممنون داداش: ولی کد ات را متوجه نشدم!! چطوری هست!! باید کجا قرار بدهم؟؟ با ان کد اصلی باید قاطی اش کنیم؟؟؟ چطوری هست؟؟
سپاس

mortezasar
جمعه 05 اردیبهشت 1393, 23:07 عصر
هرجا که عدد رو جدا کردی اینو بذار کدهات رو بذار تا دقیق بگم کجا بذاری

eletcomp
جمعه 05 اردیبهشت 1393, 23:25 عصر
داداش:منظورت را متوجه نمیشم!!! مگه این کد اصلی نیست!! توی اش replace داره که!! ولی زمانی که تو بانک درج می کنم !! ارور میده!!


private void textBoxX1_TextChanged(object sender, EventArgs e)
{
string s;
Int64 n;
try
{
s = textBoxX1.Text.Replace(",", "");
n = Convert.ToInt64(s);
textBoxX1.Text = n.ToString("#,#");
textBoxX1.Select(textBoxX1.Text.Length, 1);
}
catch (Exception ex)
{
}
}

eletcomp
جمعه 05 اردیبهشت 1393, 23:29 عصر
این شکل کلی برنامه من هست:زمانی که توی تکس باکس بدهی وام عدد می نویسم : جدا میشه ولی در هنگام ثبت توی بانک ارور میده!!! البته الان کد جدا سازی اش فعال نیست!!
الان توی دیتاگرید ویو طبق ان تنظیماتی که گفتید انجام دادم و درست شد!! ولی میخوام تکس باکس هم درست باشه!!

mortezasar
جمعه 05 اردیبهشت 1393, 23:37 عصر
ّبرای تکست باکس فقط از کد دوم یعنی ریپلیس استفاده کن

mortezasar
جمعه 05 اردیبهشت 1393, 23:39 عصر
لطفا کد ها رو توی تگ سی شارپ قرار بده تا خونده بشن

mortezasar
جمعه 05 اردیبهشت 1393, 23:40 عصر
این کد تکست باکسی که من بهت دادم برای جداکردن 3 رقم 3 رقم هست برای جدا کردن از کد استرینگ ریپلیس باید استفاده کنی

mortezasar
جمعه 05 اردیبهشت 1393, 23:44 عصر
ببین این کد برای 3 رقم 3 رقم کردن در تکست باکس (13,000)


string s; Int64 n;
try
{
s = textBoxX1.Text.Replace(",", "");
n = Convert.ToInt64(s);
textBoxX1.Text = n.ToString("#,#");
textBoxX1.Select(textBoxX1.Text.Length, 1);
}
catch (Exception ex)
{

}





و این کد هم برای برداشتن او 3 رقم 3 رقم (13000)

string name = "13,000";
name = name.Replace(",", "");
MessageBox.Show(name);

eletcomp
جمعه 05 اردیبهشت 1393, 23:56 عصر
ما عاقبت نفهمیدم این کد دوم را کجا باید نوشت!!؟؟ریپلیس!؟؟
تکس چنج یا جای دیگر؟؟

mortezasar
شنبه 06 اردیبهشت 1393, 00:08 صبح
کد دوم برای جایی که مخوای با بانک ارتباط برقرار کنی یعنی عدد رو بریزی توی بانک یا عدد رو توی بانک جست و جو کنی

eletcomp
شنبه 06 اردیبهشت 1393, 08:34 صبح
کد دوم برای جایی که مخوای با بانک ارتباط برقرار کنی یعنی عدد رو بریزی توی بانک یا عدد رو توی بانک جست و جو کنی
یعنی این کد را باید توی قسمت :مثلا توی دکمه ثبت در بانک بنویسم؟؟؟ یا حذف و....
سپاس

eletcomp
شنبه 06 اردیبهشت 1393, 22:03 عصر
دوستان لطفا راهنمایی کنید!

mortezasar
شنبه 06 اردیبهشت 1393, 22:19 عصر
بله دوست عزیز همین طوره جاهایی که میخوای اون جدا کننده نباشه باید از همون کدی که گفتم استفاده کنی
اگه کدهات رو بذاری دقیق میشه گفت کجا باید بذاری

rasol_afkham
یک شنبه 07 اردیبهشت 1393, 10:26 صبح
واقعا کسی جواب سئوال من را بلد نیست!!!
من نمی تونم داده هایی را که به این شکل جدا می شوند را در بانک ذخیره کنم!! مخصوصا زمانی که نوع داده از نوع int باشه!!! پس این روش به درد محاسبات نمی خوره!!! کسی راه حل درست و حسابی سراغ داره؟؟؟


شما برای درج مقدار در بانک مستقیما مقداری که در textBox قرار دارد را در دستور INSERT قرار داده اید. در صورتی که این عدد کاراکتر جدا کننده داره. و از نظر برنامه عدد نیست و استثنای FormatException را ایجاد می کنه. قبل از قرار دادن در دستور INSERT باید کاراکترهای جدا کننده را از آن حذف نمایید

string name = "13,000";
name = name.Replace(",", "");




در اینجا فرض کنید که متغیر name همان عدد است (13,000) در خط دوم کاراکتر جداکننده حذف شده. حالا می توانید این متغیر را به جای txtBob.Text وارد دستور INSERT کنید

bazikadeh
شنبه 01 آذر 1393, 11:22 صبح
اون کارای دوستم رو انجام داد ولی فرمت ست نمیشه ولی چپ و راست میشه

moharam1370
شنبه 01 آذر 1393, 19:01 عصر
اون کارای دوستم رو انجام داد ولی فرمت ست نمیشه ولی چپ و راست میشه

من همیشه از این کد استفاده می کنم ...

View_List.Columns[شماره ستون].DefaultCellStyle.Format = "N0";

bazikadeh
شنبه 01 آذر 1393, 20:21 عصر
یکی از دوستان هم با تیم کدم رو دید خودش تعجب میکرد چرا اینطوری شده

mrali.jalali
چهارشنبه 05 اسفند 1394, 13:47 عصر
radGridView1.Columns[10].FormatString = "{0:#,###} ";

iman.programmer
چهارشنبه 05 اسفند 1394, 18:18 عصر
درون خاصیت cellformating دیتاگریدت کد زیر را بنویس دوست عزیز

if (e.ColumnIndex == 2 && e.RowIndex != this.dgv_show.NewRowIndex) {
double d = double.Parse(e.Value.ToString());
e.Value = d.ToString("#,##0.##");
}