PDA

View Full Version : دسترسی به کنترل های درون loginview



niloo17
چهارشنبه 23 اردیبهشت 1388, 10:47 صبح
سلام دوستان
چه جوری می تونم به کنترل های درون loginview دسترسی داشته باشم.

Saber_Fatholahi
پنج شنبه 24 اردیبهشت 1388, 13:37 عصر
دوست من از طریق FindControl میتونی به کنترل های داخل هر Containery دسترسی داشته باشی
موفق باشی

niloo17
دوشنبه 28 اردیبهشت 1388, 11:08 صبح
سلام
منم از همین دستور استفاده کردم جواب نمی ده
البته وقتی تعداد کنترل ها را می زنم 0 نشون می ده


Label lbl = (Label)LoginView1.FindControl("Label8");




LoginView1.Controls

niloo17
چهارشنبه 30 اردیبهشت 1388, 09:11 صبح
سلام دوستان
یعنی هیشکی نمی تونه منو راهنمایی کنه؟؟؟:گریه::عصبانی++::گریه:

Alireza Orumand
چهارشنبه 30 اردیبهشت 1388, 15:07 عصر
سلام
ببینید درسته که loginview یه کانتینر محسوب میشه ولی به این نکته دقت کنید که این کنترل یه کانتینر مستقیم نیست و داخل اون باز هم باید از کانتینر های دیگه استفاده کنید.
بگذارید منظور خودم رو بیشتر توضیح بدم. شما وقتی یه loginviewبه صفحه اضافه میکنید نمیتونید مستقیم داخل اون کنترلی قرار بدید بلکه ابتدا باید از LoggedInTemplate یا AnonymousTemplate استفاده کنید و بعد داخل این template ها میتونید کنترل های خودتون رو قرار بدید.
پس در نتیجه کدی که شما بالا نوشتید میتونه LoggedInTemplate یا AnonymousTemplateکه داخل این loginview قرار دادید رو پیدا کنه برای پیدا کردن کنترل های دیگه باید یک مرحله جلو تر برید.
برای مثال اگر اول AnonymousTemplate رو تعریف کرده باشید و داخل اون یک لیبل تعریف کرده باشید باید کدتون رو به این شکل بنویسید


Label lbl = (Label) LoginView1.Controls[0].FindControl("lable");

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

niloo17
پنج شنبه 31 اردیبهشت 1388, 09:10 صبح
سلام
خوب منم ار همین روش استفاده می کنم ولی همون ابتدا تعداد کنترل های loginview صفر می زنه

LoginView1.Controls

count=0

Alireza Orumand
جمعه 01 خرداد 1388, 01:53 صبح
سلام

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

LoginView1.Controlscount=0
اینطوری که شما میگید امکان نداره. یا شما از Templateها استفاده کردید که در این صورت حد اقل یک کنترل داخل اون وجود داره. یا اینکه استفاده نکردی که در این صورت با خطا مواجه میشید.
کمی بیشتر بررسی کنید. اگر به نتیجه نرسیدید صفحه مورد نظر خودتون رو برام بفرستید تا ببینم مشکل کار کجاست.
موفق باشید.

sgb962
دوشنبه 08 تیر 1388, 13:52 عصر
نمی دونم بعد از یک ماه هنوزم این جواب بدردتون م خوره یا نه ولی واسه بقیه می گم:
منم این مشکل رو داشتم و اینطوری حلش کردم:
Image myimg= (Image)this.CreateUserWizard1.CreateUserStep.Conte ntTemplateContainer.FindControl("objImage");
با اینکار کنتر objImage رو دسترسی داریم

صفر کیلومتر 1389
دوشنبه 15 شهریور 1389, 14:48 عصر
سلام
من می خوام به محتوای این تکس باکس دسترسی پیدا کنم و اینم کدم هست

TextBox txtsubject = (TextBox)LoginView2.Controls[0].FindControl["txtsubject"];
ولی این پیغام خطا داده میشه

Cannot apply indexing with [] to an expression of type 'method group'

کسی از دوستان می تونه من رو راهنمایی کنه که چطوری می تونم این خطا رو برطرف کنم ..

ASPX
دوشنبه 15 شهریور 1389, 14:57 عصر
بجاي


FindControl["txtsubject"];


از


FindControl("txtsubject");