منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
لم يتم تعيين مرجع لكائن مثيل - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة السي شارب C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=175)
+--- قسم : قسم اسئلة C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=176)
+--- الموضوع : لم يتم تعيين مرجع لكائن مثيل (/showthread.php?tid=28551)



لم يتم تعيين مرجع لكائن مثيل - رسول555 - 10-02-19

اخوتي الاعزاء واجهت مشكلة مع زر حفظ صلاحيات محدد للمستخدمين والمشكلة هي عند حفظ الصلاحيات يعطي خطا (لم يتم تعيين مرجع لكائن مثيل)
و الكود مدرج ادناه و الخطا موضح في الصورة
كود :
 {
           int userId = Convert.ToInt32(list_user.SelectedValue);
           for (int i = 0; i < dataGridView1.Rows.Count;   i++)
        {
            int Screen_No = Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value);
            Boolean Dis = dataGridView1.Rows[i].Cells[3].Value.Equals(true || false);
            Boolean Add = dataGridView1.Rows[i].Cells[4].Value.Equals(true || false);
            Boolean Edit = dataGridView1.Rows[i].Cells[5].Value.Equals(true || false);
            Boolean Delete = dataGridView1.Rows[i].Cells[6].Value.Equals(true || false);
            SqlCommand cmd = new SqlCommand("UPDATE TB_Priv SET Priv_Display=@Priv_Display,Priv_Add=@Priv_Add,Priv_Edit=@Priv_Edit,Priv_Delete=@Priv_Delete  where Priv_User_ID=@User_ID and Priv_Screen_ID=@Screen_ID", con);
            cmd.Parameters.Add(new SqlParameter("@Priv_Display",SqlDbType.Bit)).Value = Dis;
            cmd.Parameters.Add(new SqlParameter("@Priv_Add", SqlDbType.Bit)).Value = Add;
            cmd.Parameters.Add(new SqlParameter("@Priv_Edit", SqlDbType.Bit)).Value = Edit;
            cmd.Parameters.Add(new SqlParameter("@Priv_Delete", SqlDbType.Bit)).Value = Delete;
            cmd.Parameters.Add(new SqlParameter("@User_ID", SqlDbType.Int)).Value = userId;
            cmd.Parameters.Add(new SqlParameter("@Screen_ID", SqlDbType.Int)).Value = Screen_No;
            con.Open();
            cmd.ExecuteNonQuery();
            con.Close();

           }
           MessageBox.Show("تم التعديل");
            }



RE: لم يتم تعيين مرجع لكائن مثيل - abouelgoud - 11-02-19

تأكد من ان قيمة الخلية ليست null


واذا كانت الخلية checkbox الافضل استبدل 

كود :
dataGridView1.Rows[i].Cells[3].Value.Equals(true || false)

ب
كود :
Convert.Toboolean(dataGridView1.Rows[i].Cells[3].Value)



RE: لم يتم تعيين مرجع لكائن مثيل - رسول555 - 11-02-19

شكرا جزيلا لك اخي العزيز
قد استخدم دالة Try لان الحقول قبل اعطاء الصلاحيات تكون noll
وقد حل المشكلة لكن هل يسبب مشاكل في المستقبل مع الشكر