PDA

View Full Version : به دست آوردن فیلد کلید در datalist



asi_hesam
شنبه 20 بهمن 1386, 12:51 عصر
سلام . مشکل من اینه که تو datalist چندیدن ستون دارم که داخل هرکدام یک imagebuttun گذاشتم حالا میخوام وقتی روی یکی از اون عکس ها (imagebuttun) کلیک کردم کد همون عکس رو که فیلد کلید من در دیتابیس هست رو به دست بیارم ...
البته باید از زحمات و موضوعات مفید این سایت تشکر کنم و بگم که در این مورد جستجو کردم ولی چون تا به حال با datalist کار نکردم اصلا نمیدونم باید چی کار کنم لطفا کمکم کنید

asi_hesam
یک شنبه 21 بهمن 1386, 00:12 صبح
کسی نیست کمکم کنه؟؟؟؟؟؟؟

خودم یه کد نوشتم ولی نمیدونم تا چه حدی درسته....

این از کد: اول در قسمت source ودر itemtemplate در داخل تگ <asp:imagebutun> Commandname="Edit" رو انتخاب کردم و سپس در رویداد editcommand دیتا لیست با دستور

int a=e.item.index;
شماره سطری رو که روش کلیک میکنم رو به دست میارم سپس با یک شرط همون سطر رو از پایگاه داده میخونم ..

به نظر شماها این روش درسته؟؟؟

mp2009
دوشنبه 22 بهمن 1386, 16:21 عصر
هر کنترل درون datalist دو خاصیت دارند که خبیلی کارها باهاشون میشه انجام داد. یکی CommandArgument و دیگری commandName است . با این دوتا هر کاری که بخوای میتونی انجام بدی. یک کم جستجو در باره این دوتا انجام بدی به نتایج خوبی میرسی . موفق باشی

TNZ187
دوشنبه 22 بهمن 1386, 19:49 عصر
سلام
طبق فرموده دوستمون ، شما می تونید این کار رو انجام بدید .
CommandArgument همون ImageButton رو با ID یا همون کلید اصلی از دیتابیس بایند کنید .یک اسم دلخواه برای رویداد این دگمه در خصوصیت CommandName در نظر بگیرید .
بعد در قسمت هندل کردن رویداد ItemCommand همون Datalist از EventArgument اون Sub مقدار CommandArguemnt رو دریافت کنید . ( خیلی بد توضیح دادم برای همین کدش رو گذاشتم )
فقط یه چیز . شما اگه نام رویداد رو Edit بگذارید با رویداد ItemEdit همون Datalist یکی می شه

<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<asp:ImageButton runat="server" ID="img1" CommandArgument=<%# Eval("ID") %> CommandName="Edit" />
</ItemTemplate>
</asp:DataList>
Sub Item_Command(sender As Object, e As DataListCommandEventArgs)
if e.CommandName="your Command Name which set befor in aspx code" then
dim ID As integer=e.CommandArgument
end if
end sub

leyla63
چهارشنبه 15 تیر 1390, 10:18 صبح
با قراردادن هر فیلدی از دیتالیست می تونی به اون دسترسی داشته باشی
<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/images/Description.gif" PostBackUrl='<%# "~/Public/Description.aspx?Field=" + Eval("Id") %>' />