ورود

View Full Version : راهنمایی برای پر کردن SlideShow های درون رکوردهای مختلف یک GridView



b.i.r.i.y.a
پنج شنبه 01 آبان 1393, 17:43 عصر
سلام. قصد طراحی صفحه ی وبی دارم به این صورت :

post 1
ــــــــــــ
متن پست 1
مجموعه تصاویر پست 1 بصورت اسلایدشو
---------------------------------------------------------

post 2
ــــــــــــ
متن پست 2
مجموعه تصاویر پست 2 بصورت اسلایدشو
---------------------------------------------------------

post 3
ــــــــــــ
متن پست 3
مجموعه تصاویر پست 3 بصورت اسلایدشو
---------------------------------------------------------
.
.
.

اینم از جدول های مربوطه :

124878

چون هر پست بیش از یک عکس داره بنابراین جدول عکس ها رو جدا کردم و postId رو بعنوان کلید بین این دو جدول در نظر گرفتم.
یک گریدویو گذاشتم که زیر هم پست ها رو میاره. اما اسلایدشو مربوط به هر رکورد رو نمیدونم چجوری باید پر کنم.
لطفا منو راهنمایی کنید.

b.i.r.i.y.a
پنج شنبه 08 آبان 1393, 10:40 صبح
یعنی هیشکی نمیتونه جواب منو بده!؟
فکر میکردم مسأله ی ساده ایه. :)

barzin144
پنج شنبه 08 آبان 1393, 10:50 صبح
دوست عزیز شما باید از دوتا گرید ویو تو در تو استفاده کنی گریدویو اول که پست هارو نمایش میده و داخلی که عکس های هرپست را نمایش میده،البته من به شخصه استفاده از ریپیتر رو ترجیح میدم

b.i.r.i.y.a
پنج شنبه 15 آبان 1393, 10:59 صبح
دوست عزیز شما باید از دوتا گرید ویو تو در تو استفاده کنی گریدویو اول که پست هارو نمایش میده و داخلی که عکس های هرپست را نمایش میده،البته من به شخصه استفاده از ریپیتر رو ترجیح میدم
خب این راه حل به ذهن خودمم رسیده بود! ولی یه جای کار گیر میکنم!
من یه GridView گذاشتم و یه Repeater درون اون GridView ، به این صورت:


<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" BorderStyle="None" GridLines="None" ShowHeader="False" AllowPaging="True" PagerSettings-FirstPageText="صفحه ی اول" PagerSettings-LastPageText="صفحه ی آخر" PagerSettings-Mode="NumericFirstLast" PagerStyle-BackColor="#CC6699" PagerStyle-Wrap="True" PagerStyle-VerticalAlign="Middle" PagerStyle-HorizontalAlign="Center">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<div class="post">
<div class="postContent">
<table class="postImgTable">
<tr>
<td>
<div id="slideshow">
<div id="slides">
<asp:Repeater ID="Repeater2" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<div class="slide-content">
<asp:Image ID="Image1" runat="server" ImageUrl='<%# "~/postsImages/" + Eval("imageName") %>' />
</div>
</ItemTemplate>
</asp:Repeater>
</div>
<div id="pager">
</div>
</div>
</td>
</tr>
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>



ولی نمیدونم چجوری برای Repeater تعیین کنم که عکسهای هر پست رو بیاره! چون بهرحال Repeater از یه SqlDataSource پر میشه و طبق این راه حل، برای هر پست، دیتاسورسش باید کوئری جدید بزنه.
خلاصه من گیر افتادم، نمیدونم چیکارش کنم.
لطفا راهنمایی بفرمایید.