الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال عن طباعة عدد معين من الأسطر في DataList ..

بدأه يوفي VIP في 5 يوليو 2012 · 3 رد · 551 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله

اخواني الكرام لدي جدول يحتوي على على سبيل المثال الحقول التالية ( Id - UserName - Images ) ويتم عرضهم في DataList بالشكل التالي :

 <ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("Id") %>'></asp:Label>
<br /><asp:Label ID="Label2" runat="server" Text='<%# Eval("UserName") %>'></asp:Label>
 </ItemTemplate>

سؤالي هو : الحقل Images من نوع int فمثلاً اذا كان يحتوي على العدد ( 3 ) أريد طباعه كود عرض صورة 3 مرات بهذا الشكل ( على سبيل المثال)

<img src="1.gif" />
<img src="2.gif" />
<img src="3.gif" />

ويكون الناتج النهائي الظاهر في المتصفح لكل سجل هو Id و UserName و عدد معين من االصور ( لكل سجل )..

وهكذا مع بقية السجلات .. فكيف هي الفكرة ؟؟ في php ممكن احصل على الرقم الموجود في الحقل ومن خلال For Loop .. ولكن باختلاف ال syntax لم استطيع كتابة For Loop في Page Source ..

أفيدوني وفقكم الله لكل خير ،،،

تم تعديل هذه المشاركة بواسطة يوفي VIP في 5 يوليو 2012 في 17:20

#2

هل من حل يا إخوان .. انا حاولت بعد طرق افضلها كان ::

 <%# Session["C"] = Eval("Images")  %>
<% int x = Convert.ToInt32(Session["C"].ToString());%>
<% for (int i = 1; i <= x; i++)
 {Response.Write(i);
Response.Write("<br />");
} %>

ولكن في هذه الحالة تكون قيمه i حسب آخر سجل فقط !! كيف الطريقة لتحديد الرقم لكل سجل على حده ...

وفقكم الله .

#3

السلام عليكم

الطريقة اعتقد كما يلي :

1-ضع label وضع فيه عدد الصور .

2-ضع اداة Literal لنضع الصور بها .

3-استخدم الحدث ItemDataBound كما في المثال ItemDataBound

4-نضع الكود التالي في itemdataBound :

Label ImagesLabel= (Label)e.Item.FindControl("ImagesLabel");

 var imgCount = int.Parse(ImagesLabel.Text);

            string img = "";


                for (int i = 1; i <= imgCount; i++)
			{
                img += "<img src=\"3.gif\" />\n<br />";
			}

                Literal Literal1 = (Literal)e.Item.FindControl("Literal11");

                Literal1.Text = img;
1
#4

سلمت والله اخوي طارق .. سيتم التجربة ولي عودة باذن الله ..

مواضيع مشابهة