صفحه 1 از 1

استفاده از یک web user control درون یک web user control دیگر

ارسال شده: پنج‌شنبه ۱۲ تیر ۱۳۹۳, ۱۱:۱۸ ق.ظ
توسط Present
سلام به همگی ،
چند روز بود می خواستم یک یوزر کنترل که نمایش کامنت های یک خبر رو انجام می ده رو درون یک یوزر کنترل که خود خبر رو نمایش می ده رو انجام بدم ولی به مشکل خورده بودم ، خیلی تو سایت هایی مانند codeproject,stackoverflow و ... رو گشتم تا اینکه جوابم رو پیدا کردم .
کاری که من می خواستم بکنم این بود که یک خبر ممکن بود چندین کامنت داشته باشه ، ما هم یک یوزر کنترل داشتیم که مخصوص نمایش خبر ها بود و یکی هم مخصوص نمایش کامنت ها و هر یوزر کنترل که کامنت ها رو نمایش می داد در یک لحظه فقط یک کامنت رو نمایش می داد .
مساله از اینجا شروع شد .
ما توسط یک کوئری تعداد کامنتهای خبر رو در می آوردیم و حالا باید اونا رو زیر خود خبر حک می کردیم !!
ما باید به تعداد کامنت ها از یوزر کامنت بسازیم و مقادیرش رو ست کنیم .
ولی چگونه ؟تصویر
تعدادی در سایت های بزرگ مارو گم راه می کردند و می گفتند توسط متد innerHtml این کار رو بکن ولی جواب [External Link Removed for Guests] .
ما باید درون یوزر کنترل خبرها یک refrence برای یوزر کنترل کامنت ها بسازیم . به شکل زیر (البته برای کد من این شکلیه ):
Please Login or Register to see this code
البته کد بالا همراه با register کردن یوزر کنترل می باشد .
سپس در صفحه یوزر کنترل خبر با پسوند ascx.cs کد زیر using ها اضافه می کنیم .

Please Login or Register to see this code

و در به صورت زیر یوزر کنترل کامنت ها رو به یوزر کنترل خبرها اضافه می کنیم :
Please Login or Register to see this code
که در اینجا divshowothercomment همون تگ div ای هست که می خواستم بهش یوزر رو اضافه کنم .
لابد می پرسید چرا از این روش با innerHtml هم میشد اینکار رو کرد ولی یک مشکل داره که فقط یک بار این کار رو انجام می ده حتی اگر تو حلقه for بذارید و ...
این از اون مشکلهایی بود که خیلی اذیتم کرد .