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

نام تاپیک: خطای ران تایم cross-thread و رفع این خطا

  1. #1

    خطای ران تایم cross-thread و رفع این خطا

    دوستان من نمیدونم معنی این خطا چیه ، و چجوری باید رفعش کنم ، و یا با دیدنش باید چیکار کنم!!!
    اگه میشه یه توضیح بفرمایید که معنی این خطا چیه ، و من برای رفع کردن این خطا چیو باید یاد بگیرم تا بفهمم مشکل از کجاست و روش حلش چیه!!

    خطا در عکس زیر نمایش داده شده.

    با تشکر.

    Capture.PNG

  2. #2

    نقل قول: خطای ران تایم cross-thread و رفع این خطا (؟)


    delegate void SetTextCallback(string text);


    private void SetText(string text)
    {
    // InvokeRequired required compares the thread ID of the
    // calling thread to the thread ID of the creating thread.
    // If these threads are different, it returns true.
    if (this.textBox1.InvokeRequired)
    {
    SetTextCallback d = new SetTextCallback(SetText);
    this.Invoke(d, new object[] { text });
    }
    else
    {
    this.textBox1.Text = text;
    }
    }


  3. #3

    نقل قول: خطای ران تایم cross-thread و رفع این خطا (؟)

    چی شد الان؟ مشکل چی بود؟

  4. #4

    نقل قول: خطای ران تایم cross-thread و رفع این خطا (؟)

    کنترل های روی فرم درون Thread اصلی قرار دارند و شما احتمالا از backgroundworker استفاده کردین که Thread جدیدی ایجاد می کند و نمی توان درون Thread جدید کنترل ها را تغییر داد و باید از delegate به روشی که نشان دادم استفاده کنید.

  5. #5

    نقل قول: خطای ران تایم cross-thread و رفع این خطا (؟)

    دارم با پورت سریال کار میکنم. اون خطی که کامنت داره رو نمیفهمم که چیکار میکنه.
      private void DisplayText(object sender, EventArgs e)
    {
    textBox1.AppendText(dataRecieve);
    }

    private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
    {

    dataRecieve = serialPort1.ReadExisting();

    this.Invoke(new EventHandler(DisplayText));//inja ro nemifahmam che etefaqi dare miofte
    }




    اگه یه زحمت بکشید و بگید چی شده اینجا؟!!

    با تشکر.

  6. #6

    نقل قول: خطای ران تایم cross-thread و رفع این خطا (؟)

    تابع DisplayText در ترد اصلی است شما این تابع رو به صورت زیر تغییر بدین.

    delegate void SetTextCallback();


    private void SetText()
    {


    if (this.textBox1.InvokeRequired)
    {
    SetTextCallback d = new SetTextCallback(SetText);
    this.Invoke(d);
    }
    else
    {
    this.textBox1.AppendText(dataRecieve)
    }
    }



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

  1. خطای ران تایم در ساخت یوزر کنترل(؟)
    نوشته شده توسط hosseinam1370 در بخش C#‎‎
    پاسخ: 2
    آخرین پست: جمعه 15 خرداد 1394, 17:29 عصر
  2. گفتگو: نحوه رفع این خطا
    نوشته شده توسط sadeghrreza در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: یک شنبه 04 خرداد 1393, 14:39 عصر
  3. سوال: رفع ارور ران تایم 2147467259- (80004005)
    نوشته شده توسط mamali1377 در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 13
    آخرین پست: یک شنبه 13 بهمن 1392, 22:46 عصر
  4. سوال: خطای ران تایم با مقدار فایل XML
    نوشته شده توسط mehrdad201 در بخش توسعه وب (Web Development)
    پاسخ: 0
    آخرین پست: پنج شنبه 09 مهر 1388, 18:41 عصر
  5. Invalid postback or callback argumentبرای رفع این خطا چه باید کرد؟
    نوشته شده توسط brida_kh در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: دوشنبه 16 مهر 1386, 20:00 عصر

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

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