PDA

View Full Version : نحوه ی ایجاد یک رویداد دکمه در gridview ؟



alef.divar
یک شنبه 21 اردیبهشت 1393, 15:57 عصر
سلام
من یک gridviwe دارم که توی هر سطر آن دو button وحود داره یکی ویرایش و یکی برای چاپ اطلاعات اون سطر.
حالا نمیدونم چطور رویداد کلیک button چاپ قرارداد رو بسازم.

118866


<asp:CommandField ButtonType="Image" CausesValidation="false" SelectImageUrl="~/Theme/pic/edit.png" SelectText="ویرایش" ShowSelectButton="True">
<ItemStyle Width="40px" />
</asp:CommandField>
<asp:ButtonField ButtonType="Button" Text="چاپ قرارداد" />


ممنون میشم راهنمایی کنید.

mRizvandi
یک شنبه 21 اردیبهشت 1393, 20:02 عصر
دوست عزیز امکان استفاده از کنترلهایی که خودشون پست بک می کنند در گرید ویو نیست. (اصولا منطق درست در نمی آد) به این دلیل که خود گرید ویو پست بک می کنه و وقتی کنترلی داخلش این کار رو بکنه، معلوم نمیشه که کی به کیه :)
بگذریم، شما باید از LinkButton استفاده کنید یا اگر می خواهید حتما Button باشه باید از CommandName استفاده کنید و در رویداد GridView_ItemCommand بر اساس کامندی که ارسال شده، کار لازم رو انجام بدید: (احتمالا به آی دی ردیفی که دکمه زده شده هم نیاز خواهید داشت که باید از CommandArguemtn استفاده کنید)

مثلا دکمه شما اینطوری تعریف میشه:

<asp:Button ID="btnPrintContract" runat="server" Text="چاپ قرارداد" CommandName="PrintContract" CommandArgument='<%# Eval("ContractID") %>' />

و در رویداد مربوطه اینطوری بررسی میشه:

if (e.CommandName == "PrintContract")
{....)