PDA

View Full Version : سوال: چگونگی برگشت شماره ی ایندکس ِآیتم انتخاب شده از datalist



mira_s304
شنبه 09 مرداد 1389, 19:20 عصر
با سلام
من برای نمایش عکس های سایتم از یک datalist استفاده کردم برای نمایش عکس ها هم imagebutton به کار بردم و کاری که می خوام انجام بدم اینه که وقتی روی عکسی کلیک می کنم می خوام که سایز اون عکس کلیک شده بزرگتر از بقیه بشه.
مشکلی که دارم اینه که از کجا بفهمم کاربر بر روی چه عکسی کلیک کرده تا اون عکس رو با سایز بزرگ نشان بده به عنوان مثال این دستور

Image img = (Image)DataList1.Items[0].FindControl("Imageshowadv");
فقط عکس شماره ی صفر رو در نظر می گیره حالا من باید در داخل کروشه ی items چه چیزی بنویسم که عکسی که روش کلیک شده مد نظر ما باشد.
در قسمت source سایتم کدهای datalist به صورت زیر است

<asp:DataList ID="DataList1" runat="server" CellPadding="4"
DataSourceID="SqlDataSource2" ForeColor="#333333"
RepeatDirection="Horizontal"
onselectedindexchanged="DataList1_SelectedIndexChanged" SelectedIndex="1">
<FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
<AlternatingItemStyle BackColor="White" />
<ItemStyle BackColor="#FFFBD6" ForeColor="#333333" />
<SelectedItemStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" />
<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
<asp:ImageButton ID="Imageshowadv" ImageUrl ='<%#Eval("urladvs")%>'
Height ="74" Width ="100" runat="server" onclick="Imageshowadv_Click" />
<br />
<br />
</ItemTemplate>


</asp:DataList>
با تشکر از شما

rozegar21
یک شنبه 10 مرداد 1389, 18:01 عصر
protectedvoid DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
Panel1.Visible = true;
DataList1.Visible = false;
if (e.CommandName == "select")
{
DataList1.SelectedIndex = e.Item.ItemIndex;}

Label1.Text = ((Label)DataList1.SelectedItem.FindControl("name")).Text;
Label2.Text = ((Label)DataList1.SelectedItem.FindControl("nevisand")).Text;
Label3.Text = ((Label)DataList1.SelectedItem.FindControl("ghymat")).Text;
Label4.Text = ((Label)DataList1.SelectedItem.FindControl("tedad")).Text;
Label5.Text = ((Label)DataList1.SelectedItem.FindControl("nasher")).Text;
Label6.Text = ((Label)DataList1.SelectedItem.FindControl("nobate_chap")).Text;
Label7.Text = ((Label)DataList1.SelectedItem.FindControl("tarjome")).Text;

}

من این کد رو نوشتم و روی هری ایتمی که کلیک میکردم اطلاعاتشو بهم میداد

hashemi85sep
پنج شنبه 04 شهریور 1389, 11:31 صبح
سلام
من برای نمایش اخبار از DataList استفاده کردم
برای بدست آوردن id سطر انتخاب شده از این کد استفاده کردم
if (e.CommandName == "select")
{
DataList1.SelectedIndex = e.Item.ItemIndex;
}
ولی داره به این خط گیر میده :متفکر:
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
البته این قسمت رو به صورت دستی وارد کردم
چون نمیدونم چطوری میاد ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

ItemCommand(object source, DataListCommandEventArgs e)

Ali_M.Eghbaldar
پنج شنبه 04 شهریور 1389, 14:34 عصر
سلام به همه
http://barnamenevis.org/forum/showthread.php?t=239225