نمایش نتایج 1 تا 18 از 18

نام تاپیک: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

  1. #1
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    سلام به همگی
    من میخام توی گرید ویویی که اطلاعات را از بانک میگیره یه ستونش مثلا بجای 0 یه عکس نشون بده و بجای 1 یه عکس دیگه کسی هست کمکم کنه؟
    ممنون

  2. #2

    نقل قول: نمایش عکس در گرید بر اساس شرط خاص در سی شارپ

    ابتدا ستونت رو از نوع DataGridViewImageColumn قرار بده، حالا بیا داخل سازنده فرم این کد رو بنویس:(توضیحشم کامنت کردم)
    /// برای اینکه ستون تصویرت، در صورتیکه هیچ تصویری بهش ندادی، تصویر ضربدر که پیش فرض هست رو نشون نده
    ((DataGridViewImageColumn)this.DataGridView1.Colum ns["اسم یا اندیس ستونت"]).DefaultCellStyle.NullValue = null;


    حالا اصل کاری یعنی نمایش تصویر رو هر جایی که خودت خواستی بذار:

    if (0)
    {
    DataGridViewImageCell imageCell = DataGridView1.Rows[i].Cells[اندیس ستون] as DataGridViewImageCell;
    imageCell.Value = (Image)مسیر فایلت، حالا میتونی تصویر رو داخل ریسورس ها بذاریش;
    }
    else
    {
    DataGridViewImageCell imageCell = DataGridView1.Rows[i].Cells[اندیس ستون] as DataGridViewImageCell;
    imageCell.Value = (Image)مسیر فایلت، حالا میتونی تصویر رو داخل ریسورس ها بذاریش;
    }


  3. #3
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در گرید بر اساس شرط خاص در سی شارپ

    سلام
    ممنون از راهنماییتون
    منظورت از i چیه؟

    کجا تعریف شده یا کجا تعریفش کنم؟
    DataGridView1.Rows[i]

  4. #4

    نقل قول: نمایش عکس در گرید بر اساس شرط خاص در سی شارپ

    نقل قول نوشته شده توسط حسین.کاظمی مشاهده تاپیک
    سلام
    ممنون از راهنماییتون
    منظورت از i چیه؟

    کجا تعریف شده یا کجا تعریفش کنم؟
    DataGridView1.Rows[i]
    یک حلقه For بذارین و به ازای هر سطر داخل دیتاگریدویو پیمایش رو انجام بدین

  5. #5
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در گرید بر اساس شرط خاص در سی شارپ

    من اومدم توی یک تابع نوشتمش


    private void read_type()
    {
    for (int i = 0; i < dataGridView1.Rows.Count; i++)
    {
    if (dataGridView1.Columns[3].ValueType.Equals('0'))
    {
    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[3] as DataGridViewImageCell;
    imageCell.Value = imageList1.Images[0];
    }
    else
    {
    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[3] as DataGridViewImageCell;
    imageCell.Value = imageList1.Images[1];
    }
    }
    }

    بعد توی رویداد load فرم اینجوری نوشتم ولی اجرا نمی کنه و خطای not refrence object میده



    active(@"SELECT KodPersonel AS[کد پرسنلی], Name_Per AS[نام], Family_Per AS[فامیلی], Vaziat AS[وضعیت]
    FROM tbl_info_personel");
    read_type();

  6. #6

    نقل قول: نمایش عکس در گرید بر اساس شرط خاص در سی شارپ

    شرطتون اشتباهه باید اینجوری شرط رو چک کنین:
    if(dgv.rows[i].cells[3].value.tostring() == "0")
    {}
    else
    {}

    اما پیشنهاد میکنم که این مقادیر رو داخل یک لیست یا دیتاتیبل قرار بدین و چک کنین، منظورم مقدار ستون سوم هر سطر هستش. این روش هم کار میکنه مشکلی نیس

  7. #7
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    باسلام

    من کد زیر را که با کمک دوستمون mr.sirwan نوشتم درویژوال 2012 جواب میده ولی در ویژوال 2015 جواب نمیده مشکل از چی میتونه باشه؟؟

    کد:


    private void read_type()
    {
    for (int i = 0; i < dataGridView1.Rows.Count; i++)
    {
    if (dataGridView1.Rows[i].Cells[15].Value.ToString() == "0")
    {
    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;
    imageCell.Value = (Image)SGP.Properties.Resources.Shape63;
    }
    else if (dataGridView1.Rows[i].Cells[15].Value.ToString() == "1")
    {
    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;
    imageCell.Value = (Image)SGP.Properties.Resources.Check_01;
    }
    else if(dataGridView1.Rows[i].Cells[15].Value.ToString()== "2")
    {
    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;
    imageCell.Value = (Image)SGP.Properties.Resources.Cancel;
    }
    }
    }



  8. #8

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    سلام
    مشکل چیه؟ مورد انتظار کار نمیکنه؟ ارور میده؟ یا .... لطفا بیشتر توضیح بدین

  9. #9
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    توی ستون عکسی که درست کردم عکس مورد نظر را نشون نمیده همون ضربدر قرمز پیش فرض را نشون میده

  10. #10

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    احیانا توی جدولتون جای ستون هارو عوض نکردین؟ حالا توی دیتابیس یا دیتاست و....
    چون این مشکل به نسخه ویژوال برنمیگرده

  11. #11
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    شمارش فیلدهام از بانک اطلاعاتی (شروع از صفر) اون فیلد مورد نظرم 13میشه.
    ولی در دیتا گریدمم دوتا ستون اول را از نوع عکس گذاشتم که میشه در واقع همون فیلد مورد نظرم میشه سلول 15.کد بالا را هم بنظر میرسه درست باشه ولی عکس را نمیاره.....

  12. #12
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

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


    MessageBox.Show(dataGridView1.Rows[i] + "-" + dataGridView1.Rows[i].Cells[2].Value.ToString());

    کدهای تابع تا مسیج باکس هست کار میکنه مثل عکس زیر ولی بعد از اتمام آخرین سطر دیتا گرید، همشون پاک میشند و عکس ضربدر قرمز پیش فرض نشون داده میشه...دیونه ام کرده



    3333333.png
    آخرین ویرایش به وسیله حسین.کاظمی : جمعه 06 اسفند 1395 در 12:49 عصر

  13. #13

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    پس کد ست کردن تصویر درست کار میکنه، کداتون رو دقیقا بعد از اتمام این عملیات بذارین تا بهتر راهنمایی کنیم

    ویرایش 1:
    موقعی که با تیم ویور وصل شدم و کداتونو نگاه انداختم، یادمه یه جا dgv.columns.clear یا rows.clear یا یه همچین چیزی رو فراخوانی کرده بودین، که کامنتش کردم، احتمالا بازم یه جایی همچین دستوری رو نوشتین چک کنین
    آخرین ویرایش به وسیله mr.sirwan : جمعه 06 اسفند 1395 در 13:11 عصر

  14. #14
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    این کل کدهام و بعد در رویداد لوود فرم تابع را فراخوانی میکنم



    private void read_type()
    {

    DataTable dtt = new DataTable();
    dtt = db.dataTableSelect(@"SELECT statuss FROM tbl_TazakorKatbi");
    dataGridView1.DataSource = dtt;
    for (int i = 0; i < dtt.Rows.Count; i++)
    {
    if (dataGridView1.Rows[i].Cells[2].Value.ToString() == "0")
    {
    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;
    imageCell.Value = (Image)SGP.Properties.Resources.Shape63;

    }
    else if (dataGridView1.Rows[i].Cells[2].Value.ToString() == "1")
    {
    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;
    imageCell.Value = (Image)SGP.Properties.Resources.Check_01;
    }
    //else if (dataGridView1.Rows[i].Cells[2].Value.ToString() == "2")
    //{
    // DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;
    // imageCell.Value = (Image)SGP.Properties.Resources.Cancel;
    //}
    MessageBox.Show(dataGridView1.Rows[i] + "-" + dataGridView1.Rows[i].Cells[2].Value.ToString());

    }

    }


  15. #15
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    نقل قول نوشته شده توسط mr.sirwan مشاهده تاپیک
    پس کد ست کردن تصویر درست کار میکنه، کداتون رو دقیقا بعد از اتمام این عملیات بذارین تا بهتر راهنمایی کنیم

    ویرایش 1:
    موقعی که با تیم ویور وصل شدم و کداتونو نگاه انداختم، یادمه یه جا dgv.columns.clear یا rows.clear یا یه همچین چیزی رو فراخوانی کرده بودین، که کامنتش کردم، احتمالا بازم یه جایی همچین دستوری رو نوشتین چک کنین
    نه دوست عزیز ، از اون موقع دیگه اون کد را نمی نویسم....
    آخه جالبه با مسیج باکس که رکورد به رکورد را میره جلو عکس هم نشون میده ولی بدون مسیج باکس اصلا کار نمیده

  16. #16

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    روی مسیج باکس breakpoint بزارید با f11 تریس کنید ببینید چه اتفاقی میافته.

  17. #17
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    باسلام
    من با کمک دوست خوبم آقای که واقعا زحمت کشیدند تلاش کردیم به یسری از مشکلاتی مثل API ایی که من توی پروژه ام استفاده کرده بودم برخوردیم و حلش کردیم ولی مشکل از چندتا کد خیلی خیلی ساده است و نمیدونم باید چکارش کنم که درست بشه......

    من ی فرم دارم که درونش 2تا پنل گزاشتم یکی بعنوان منو و پنل دوم خالی است برای اینکه فرم فراخوانی شده درون این پنل با کدهای زیر نمایش داده بشه...


    this.cursor=cursors.waitcursor;
    lbl_title.text = btn_law.tex;
    p_content.visible =false;
    frmtazakor tazakor=new frmtazakor();
    tazakor.formborderstyle= formborderstyle.none;
    tazakor.dock=dockstyle.fill;
    tazakor.toplevel =false;
    p_content.controls.clear();
    p_contrentc.controls.add(tazakor);
    tazakor.show();
    this.cursor=cursors.deffault;




    خب تا اینجا هیچ مشکلی نیست و همچیز درست کار میکنه ولی درون فرم تذکر که فراخوانی میشه یه تابع که درون این تابع یک حلقه خیلی ساده با کد های زیر برای نشون دادن یک سری عکس براساس مقادیر یک ستون از دیتا گرید گذاشتم.

    *بریک پوینت بروی tazakor.show(); گذاشتم که به خطای زیر برخورد.

    IMG_20170226_103740.jpgIMG_20170226_103740.jpg




    {

    for (int i = 0; i < dataGridView1.Rows.Count; i++)

    {

    if (dataGridView1.Rows[i].Cells[15].Value.ToString() == "0")

    {

    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;

    imageCell.Value = (Image)SGP.Properties.Resources.Shape63;

    }

    else if (dataGridView1.Rows[i].Cells[15].Value.ToString() == "1")

    {

    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;

    imageCell.Value = (Image)SGP.Properties.Resources.Check_01;

    }

    else if(dataGridView1.Rows[i].Cells[15].Value.ToString()== "2")

    {

    DataGridViewImageCell imageCell = dataGridView1.Rows[i].Cells[0] as DataGridViewImageCell;

    imageCell.Value = (Image)SGP.Properties.Resources.Cancel;

    }

    }

    }



    حالا زمانی که فرم تذکر را درون پنل باز میکنم این تابع کار نمیکنه (یعنی ستونی که عکس است را نشون نمیده همون عکس ضربدر قرزم رنگ-پیش فرض نشون میده )ولی وقتی فرم تذکر را خارج از پنل باز می کنم کدها بدون مشکل کار میکنه و ستون عکس هم براساس مقادیر فیلد مورد نظرم عکس مورد نظر را نشون میده......

    کسی میدونه مشکل از چیه؟؟؟؟
    آخرین ویرایش به وسیله حسین.کاظمی : یک شنبه 08 اسفند 1395 در 14:42 عصر

  18. #18
    کاربر دائمی آواتار حسین.کاظمی
    تاریخ عضویت
    مرداد 1392
    محل زندگی
    Microsoft Visual Studio
    پست
    652

    نقل قول: نمایش عکس در datagridview بر اساس شرط خاص در سی شارپ

    کسی نیست کمکم کنه؟؟؟؟

تاپیک های مشابه

  1. سوال: رنگی کردن سطر های datagrid بر اساس شرط خاص
    نوشته شده توسط ozzy_mra در بخش C#‎‎
    پاسخ: 17
    آخرین پست: سه شنبه 22 تیر 1395, 19:13 عصر
  2. پاسخ: 2
    آخرین پست: شنبه 23 آبان 1394, 07:25 صبح
  3. آموزش: رنگی کردن سطرهای datagridview بر اساس شرط خاص
    نوشته شده توسط jafarpalideh در بخش C#‎‎
    پاسخ: 6
    آخرین پست: چهارشنبه 04 شهریور 1394, 12:26 عصر
  4. سوال: رنگي كردن يك سطر در گريد بر اساس شرط خاص
    نوشته شده توسط mehrnaz_ss در بخش ASP.NET Web Forms
    پاسخ: 12
    آخرین پست: پنج شنبه 03 مرداد 1392, 19:26 عصر
  5. مبتدی: تغغر رنگ و فونت گرید ویو بر اساس شرط خاص
    نوشته شده توسط ozzy_mra در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: سه شنبه 14 تیر 1390, 08:07 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •