PDA

نسخه کامل مشاهده نسخه کامل : مشکل با Listview ---- عدم نمایش بموقع اطلاعات



Ship Storm
19-06-2013, 22:15
سلام بر اساتید
من یک مشکل حل نشدنی دارم با Listview
وقتی میخوام اطلاعاتی رو تو فرم Edit ویرایش کنم یکی از گزینه ها ویرایش عکس هست که میتونیم تصویر رو ویرایش کنیم و عکس جدیدی رو جایگزین کنیم
مشکل من اینجاست که وقتی رو داده هایی که بعد از ویرایش روی Listview ریخته میشن کلیک میکنم عکس جدید رو نشون نمیده و یکم اذیت میکنه به این صورت که باید روی سطر بالایی یا پایینی کلیک کنی و بعد روی سطری که ویرایش شده کلیک کنی تا عکس رو نمایش بده
نمیدونم منظورم رو متوجه شدین یا نه !!!
از listvie.update و refresh هم استفاده کردم اما بی فایده بوده برای حجل این مشکل
خواهش میکنم یک راه حل اساسی بدین واسه حل این مشکل
یک عکس هم میزارم از برنامه بهتر متوجه قضیه بشید :

105782[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

ببینید من الان یوزر شماره 8 رو ویرایش کردم و یک عکس جدید براش جایگزین کردم ولی وقتی بعد از زدن دکمه ویرایش میام روی سطر یوزر 8 تو listview کلیک میکنم عکسی به من نشون نمیده و باید حتما روی یوزر 6 یا 10 کلیک کنم و بعد بیام روی یوزر 8 کلیک کنم تو listview تا عکس جدید نمایش داده بشه
ممنون میشم کمک کنید این مشکل من حل بشه


اینم کدی که تو خاصیت ListView1_ItemSelectionChanged نوشتم تا اطلاعات رو از دیتابیس بخونه و بریزه روی فرمم :




برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

saurron
19-06-2013, 23:27
یه جورایی این حرف من راهنمایی برای خودم هست تا شما!
نمیشه کد آپدیت عکس رو توی کلید آپدیتِ ویرایش هم بذارید؟! و یا از توی همون کلید آپدیت، ListView1_ItemSelectionChanged رو فراخوانی کنید؟!
:n13:

Payman_62
20-06-2013, 00:58
سلام.
از ایونت های دیگه مثل MouseClick برای ریفرش عکس استفاده کن.

Ship Storm
20-06-2013, 11:32
یه جورایی این حرف من راهنمایی برای خودم هست تا شما!
نمیشه کد آپدیت عکس رو توی کلید آپدیتِ ویرایش هم بذارید؟! و یا از توی همون کلید آپدیت، ListView1_ItemSelectionChanged رو فراخوانی کنید؟!
:n13:

این رو قبلا هم امتحان کرده بودم و مجدد هم امتحان کردم نشد و مشکل پابرجاست


سلام.
از ایونت های دیگه مثل MouseClick برای ریفرش عکس استفاده کن.

متاسفانه نشد و نتیجه نداشت

szh_1367
20-06-2013, 12:19
این رو قبلا هم امتحان کرده بودم و مجدد هم امتحان کردم نشد و مشکل پابرجاست



متاسفانه نشد و نتیجه نداشت

نشد !!!

ببین اگر نرم افزار رو برای کسی به جز خودت نمیخواهی بهتره از راه حل های غیر استاندارد استفاده کنی

مثلا بیای ایندکس سطر رو بعد از تغییرات به وسیله کد نویسی کم و زیاد کنی

یا اون picture box ای که قرار عکس نمایش دهد برابر null قرار بدی و دوباره برابر ادرس یا اسم عکس جدید قرار دهید

اما در کل نباید مشکلی باشه

Ship Storm
20-06-2013, 13:07
این روش رو هم تست کردم نشد متاسفانه

shotok
20-06-2013, 14:59
بسم الله الرحمن الرحیم
با سلام
در دکمه ویرایشتون کد مربوط به پر شدن لیستتون رو هم قرار بدید. که بلافاصله بعد از دکمه ویرایش لیستتون هم آپدیت بشه.
موفق باشید.

Ship Storm
20-06-2013, 15:43
بسم الله الرحمن الرحیم
با سلام
در دکمه ویرایشتون کد مربوط به پر شدن لیستتون رو هم قرار بدید. که بلافاصله بعد از دکمه ویرایش لیستتون هم آپدیت بشه.
موفق باشید.

خوب این مورد که هست و از قبل بوده

saurron
20-06-2013, 17:57
یعنی حتی وقتی به صورت خودکار ایندکس لیست عوض میشه و دوباره سر جای اولش قرار میگیره مشکل پا برجاس؟
اگه اینطوره به نظر من یه جای کوچیک کار میلنگه و از قلم افتاده و مشکل جدی نیست، این عکس انتخاب شده توی CustomerPictures وجود داره یا برنامه اول اونو کپی میکنه (که یه مقدار زمان بر هست) و بعد آپدیت میشه؟
کلا چطوره از یه تایمر استفاده کنید که بعد از چند صدم ثانیه ListView1_ItemSelectionChanged فراخوانی بشه و یا بعد از چند لحظه ایندکس عوض بشه و به حالت قبل برگرده؟

samasara
20-06-2013, 21:01
خاصیت ItemSelectionChanged بعد از تغییر اتنخاب ها اتفاق می افته بهتر هست از رویداد های دیگه ای مثل ColumnClick استفاده کنید..

Ship Storm
20-06-2013, 21:01
یعنی حتی وقتی به صورت خودکار ایندکس لیست عوض میشه و دوباره سر جای اولش قرار میگیره مشکل پا برجاس؟

آره دقیقا مشکل عجیبی هست معلوم نیست مشکل کجای کاره و از چیه



این عکس انتخاب شده توی CustomerPictures وجود داره یا برنامه اول اونو کپی میکنه (که یه مقدار زمان بر هست) و بعد آپدیت میشه؟

این عکس کپی میشه و بعد آپدیت میشه ولی فرقی نمیکنه حتی 10 ثانیه هم صبر کنی بازم مشکل هست برای بار اول که کلیک میکنی روش

Ship Storm
20-06-2013, 21:04
خاصیت ItemSelectionChanged بعد از تغییر اتنخاب ها اتفاق می افته بهتر هست از رویداد های دیگه ای مثل ColumnClick استفاده کنید..

تو این رویداد امکان استفاده از پارامتر برای دریافت مقادیر نیست و با ارور مواجه میشه کار
e.Item.SubItems(5).Text قایل استفاده نیست که بخوام تو PictureBox2.ImageLocation مقدار بدم

samasara
20-06-2013, 21:54
یک پیشنهادی شاید جواب داد .. در انتهای دکمه ی ادیت فکوس رو روی لیست و اولین گزینه بده به این صورت شاید اون رویداد بموقع اتقاق بیفته..

saurron
20-06-2013, 22:04
یک پیشنهادی شاید جواب داد .. در انتهای دکمه ی ادیت فکوس رو روی لیست و اولین گزینه بده به این صورت شاید اون رویداد بموقع اتقاق بیفته..
اینم جالبه :n09:

Ship Storm
20-06-2013, 22:13
یک پیشنهادی شاید جواب داد .. در انتهای دکمه ی ادیت فکوس رو روی لیست و اولین گزینه بده به این صورت شاید اون رویداد بموقع اتقاق بیفته..

با دستور
ListView1.Items(0).Selected = True
این کار رو انجام دادم ولی باز هم فایده ای نداشت متاسفانه

samasara
20-06-2013, 22:18
با دستور .FocusedItem امتحان بکن ..

اگر برات امکان داره دستور های edit رو هم بگذار شاید کلید این مشکل عجیب اونجا باشه

Ship Storm
20-06-2013, 22:38
با دستور .FocusedItem امتحان بکن ..

اگر برات امکان داره دستور های edit رو هم بگذار شاید کلید این مشکل عجیب اونجا باشه

با این دستور

listView1.FocusedItem = listView1.Items.Item(0)
هم تست کردم نشد
الان کد دکمه edit رو هم قرار میدم

Ship Storm
20-06-2013, 22:39
کد دکمه Edit :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

samasara
20-06-2013, 23:18
راستش آلان واقعا شرایط درست فکر کردن رو ندارم .. اما چرا نوشتی :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
شما بجای خالی کردن همون اطلاعات ویرایش شده به بدید .. با این کار کلا این مشکل حل می شه(البته بشتر مثل پاک کردن صورت مسله می مونه اما به هرحال مثل اسپرین می مونه)

Ship Storm
21-06-2013, 22:05
راستش آلان واقعا شرایط درست فکر کردن رو ندارم .. اما چرا نوشتی :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
شما بجای خالی کردن همون اطلاعات ویرایش شده به بدید .. با این کار کلا این مشکل حل می شه(البته بشتر مثل پاک کردن صورت مسله می مونه اما به هرحال مثل اسپرین می مونه)



این قسمت که فقط جهت خالی کردن مقدارهای داخل textbox ها و بقیه ابزارهای روی فرم یعد از ویرایش هست (برگشت به حالت اول)