日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

在GridView中添加按钮后,如何触发按钮的各种事件?

發布時間:2025/6/15 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在GridView中添加按钮后,如何触发按钮的各种事件? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
//GridView中添加按鈕后,如何觸發按鈕的各種事件?

1.在GridView的“編輯列”屬性窗口中,增加新的Botton列。

2.然后再該窗口右邊屬性中,將外觀項下的ButtonType設置一下,設置項有:如:Link、Button、Image。

3.屬性設置完成后,在右邊屬性列表窗口的下方有這樣一行超鏈接藍字:將此字段轉換為TemplateField,單擊這個超鏈接,把該列插入進來的字段轉換為模版。

//添加了一個刪除控件,并將其轉換為模版后的代碼,該控件還和在GridView所在行的主鍵進行綁定,把主鍵作為參數帶到該控件的各個事件函數中。

<asp:TemplateField?ShowHeader="False"?HeaderText="刪除">

?????????????<ItemTemplate>

????????????????????<asp:LinkButton?ID="LinkButton1"?runat="server"?CausesValidation="False"?CommandArgument='<%# Eval("ClientID")?%>'

????????????????????????????OnClick="LinkButton1_Click"?Text="刪除"></asp:LinkButton>

????????????????</ItemTemplate>

???????</asp:TemplateField>

?

//這是一個沒有綁定字段值的新增Button列,將其裝換為模版后的代碼如下:

<asp:TemplateField>

?????????????<ItemTemplate>

?????????????????<asp:Button?ID="Button2"?runat="server"?CausesValidation="false"?CommandName=""?Text="按鈕"?OnClick="Button2_Click"?/>

?????????????</ItemTemplate>

?????</asp:TemplateField>

4.??然后即可在編輯模版狀態下,編輯、設置這個控件的各種事件了,比如雙擊這個控件按鈕,系統則會自動在.cs文件中添加該控件的OnClick事件觸發的函數。

注意:如果你的GridView中加入了多個轉換為模版的列,進入編輯模版狀態后,要選擇相應的轉換為模版的列,才能進行編輯。如下圖:


另:在cs文件中調用Gridview中按鈕綁定的值:

?1protected?void?LinkButton2_Click(object?sender,?EventArgs?e)
?2????{
?3????????SqlConnection?myconn;
?4????????SqlCommand?mycommand;
?5????????myconn?=?new?SqlConnection(ConfigurationManager.ConnectionStrings["BaseConnectionString"].ConnectionString);
?6????????string?sql?=?"update?Bbs_Message?set?ISTOP=1?where?Bbs_MessageIS="?+?((LinkButton)sender).CommandArgument.ToString();
?7????????//Response.Write(sql);
?8????????myconn.Open();
?9????????mycommand?=?new?SqlCommand(sql,?myconn);
10????????mycommand.ExecuteNonQuery();
11????????myconn.Close();
12
13????????Response.Redirect("SQS_ADD3.aspx?XkzSqsID="?+?Request.QueryString["XkzSqsID"].ToString());

14????}



做網站的時候 會出現很多的不同的問題,很多書上又找不到,對于GridView的應用書上學來終覺淺呀!

網上找了很多,也試了很多方法 終于找到了簡單的語句。在這里分享下,希望幫到大家。

自定義操作獲取GridView行的索引:

例:在GridView模板中添加Button,單擊Button的時候希望獲取該操作行row,


????protected void Button1_Click(object sender, EventArgs e)
????{??

?int row = ((GridViewRow)((Button)sender).NamingContainer).RowIndex;

?

//獲取該操作行中的其他控件??因為不可直接引用.?

?LinkButton lnk = (LinkButton)gv.Rows[row].FindControl("LinkButton1");

?

……//其他語句

}

?

GridView中設置隱藏列并獲取隱藏列的值

網上大多是設置DataKeyNames來實現,還可以用模板來實現:

?

asp:TemplateField HeaderText=" " Visible="false"> //模板列設置成不可見。
?????<ItemTemplate>
??????????<asp:Label ID="Label1" runat="server" Text='<%# eval_r("字段名") %>' />
????????????????????????????????????</ItemTemplate>
????????????????????????????????</asp:TemplateField>

?

Im獲取還是用:

Label?lbl = (Label)gv.Rows[row].FindControl("Label1");

string text=lbl.Text;//即為Lable1的值。

?

?

?

簡單易明的實現效果,這篇就這樣了。


總結

以上是生活随笔為你收集整理的在GridView中添加按钮后,如何触发按钮的各种事件?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。