PDA

View Full Version : مبتدی: تغییر متن label



zhr.rezae66i
دوشنبه 07 مرداد 1392, 11:09 صبح
سلام من کد زیر رو در برنامم نوشتم اما کار نمیکنه و متن رو نشون نمیده
چرا خب:(


if (Directory.Exists(s.FullName) == false)
{
Form1 f = new Form1();
f.ErrorTxt.Text = "file does not in sourc ";
}
این کد داخل formload نیست
window aplication کار میکنم
تحت شرایط خاصی متن تغییر میکنه نه از همون ابتدا

arashnaderi
دوشنبه 07 مرداد 1392, 11:23 صبح
سلام
شما میخواین یه متنی رو داخل تکس باکسی که توی یک فرم دیگه هست رو نمایش بدین؟

crazy_1892
دوشنبه 07 مرداد 1392, 11:27 صبح
خوب یه شرط بذار

بعدشم که
label.focolor=system.drawing.color.red;

zhr.rezae66i
دوشنبه 07 مرداد 1392, 11:37 صبح
من در برنامم از ترد استفاده کردم
و موقع اجرای ErrorTxt.Text = "file does not in sourc "; دستور خطای زیر رو میده
Cross-thread operation not valid: Control 'ErrorTxt' accessed from a thread other than the thread it was created on.

zhr.rezae66i
دوشنبه 07 مرداد 1392, 11:39 صبح
سلام
شما میخواین یه متنی رو داخل تکس باکسی که توی یک فرم دیگه هست رو نمایش بدین؟
نه همون فرم
اینکه از ی فرم شی ساختم درستش نبود اما اگه نمیساختم اررور میداد

zhr.rezae66i
دوشنبه 07 مرداد 1392, 11:59 صبح
دوستان خودم یافتم
وقتی از ترد استفاده میشه برای تغییر متن label ها یا کلا کنترل ها باید ازین را حل استفاده کنید
http://blogs.cametoofar.com/post/Cross-Thread-operation-not-valid-in-WinForm.aspx

ErrorTxt.Invoke(new MethodInvoker(delegate{ErrorTxt.Text = "file does not in sourc";}));
ممنون