PDA

View Full Version : سوال: ریختن اطلاعات دیتاگرید در لیست باکس ؟



ghasem110deh
جمعه 08 اسفند 1393, 16:43 عصر
سلام به همه ...
چطور اطلاعات توی دیتاگریدویو رو توی یه لیست باکس نشون بدم ؟
(عکس ضمیمه)

Mofid.m
جمعه 08 اسفند 1393, 19:57 عصر
اول باید بگی چطوری باید نشونش بدی؟؟؟؟
به فرض بخوای هر سطر از اطلاعات گرید رو توی لیست باکس بریزی مثلا برای مثال بالا "شماره چک_مبلغ_وجه_تاریخ" فرمت رو داشته باشه یعنی هر فیلد با یه _ از هم جدا بشن.



for(int i=0;i<DataGridView.Rows.Count-1;i++)
{
strItem=DataGridView.Rows[i].Cells[0].Value.ToString()+"_"+DataGridView.Rows[i].Cells[1].Value.Tostring()+
"_"+DataGridView.Rows[i].Cells[2].value.ToString()+"_"+DataDridView.Rows[i].Cells[3].Value.ToString();
ListBox.Items.Add(strItem);
}

این کد رو میتونی تو رویداد لود فرم یا هر جایی که صلاح میدونی بنویسی در ضمن strItem هم یه متغیر استرینگ هستش که باید تعریفش کنی

ghasem110deh
جمعه 08 اسفند 1393, 23:09 عصر
سلام و ممنون !
خیلی عالی شد ... فقط خیلی به هم چسبیدن (منظورم واسه وقتیکه چند سطر داریم)
نمیشه یه سطر در میون بیوفته یا بینشون خطی ، چیزی کشید !
.
.
.
البته بابت همینم کلی تشکر :)

Mofid.m
جمعه 08 اسفند 1393, 23:56 عصر
خواهش می کنم
چرا میشه
شما به جای نمایش همه سلول های هر سطر میتونی هر سلولی رو که بخوای انتخاب کنی و قبل و بعد آندرلاین میتونی یه اسپیس بزنی تا به آندرلاین نچسبن
به جای آندرلاین میتونی پرانتز یا هر کاراکتر دیگه ایی رو بزاری.
منظورت از یه سطر در میون همون یه سلول در میونه یا واقعا می خوای یه سطر در میون چاپ کنی؟
اگر بخوای اونم میشه فقط توی حلقه For یه شرط بزار اگه مثبت بود بریزه تو لیست باکس یا اگر منفی بود بریزه

اگر هم منظورت اینه که بخوای فاصله بین آیتم های لیست باکس رو بستر کنی یه خاصیتی هست به نام ItemHeight که باید اونو تنظیم کنی

ghasem110deh
شنبه 09 اسفند 1393, 10:00 صبح
سلام و ممنون ...
منظورم دقیقا خط آخر جواب شماست !

از این استفاده کردم ولی هیچ تغغیری نمیکنه :

listBox1.ItemHeight = 40;

Mofid.m
شنبه 09 اسفند 1393, 10:21 صبح
اره تغییر نمیکنه
برای تغییر دادنش باید یه سری خاصیت های دیگه رو تنظیم کنید.
البته می تونید با بزرگ کردن فونت فاصله بینشون رو هم بیشتر کنید
برای تغییر ItemHeight باید خاصیت DrawMode رو هم تنظیم کنین.
البته خودم تا حالا نیازی به این کار پیدا نکردم و منم آدمی هستم تا نیاز نشه نمیرم دنبالش
اما با یه جستجو تو گوگل، البته به زبان انگلیسی راحت می تونین به جواب برسین
یه سری به صفحه https://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.itemheight(v=vs.110). aspx برن.