在GridView中新增按鈕後,如何觸發按鈕的各種事件?
1.在GridView的“編輯列”屬性視窗中,增加新的Botton列。
2.然後再該視窗右邊屬性中,將外觀項下的ButtonType設定一下,設定項有:如:Link、Button、Image。
3.屬性設定完成後,在右邊屬性列表視窗的下方有這樣一行超連結藍字:“將此欄位轉換為TemplateField”,單擊這個超連結,把該列插入進來的欄位轉換為模版。
//添加了一個刪除控制元件,並將其轉換為模版後的程式碼,該控制元件還和在GridView所在行的主鍵進行繫結,把主鍵作為引數帶到該控制元件的各個事件函式中。
<asp:TemplateField
<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中按鈕繫結的值:
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的值。
簡單易明的實現效果,這篇就這樣了。
相關推薦
記錄Android開發一個小坑,佈局檔案TextView中新增onClick後,點選無效問題
自己寫東西的時候,在TextView上添加了onClick去增加點選事件,去跳轉另一個Activity,執行後結果點選無效,新增Toast,Toast也不顯示,程式碼如下: <TextView android:layout_width="wrap_content"
iOS 在xib或者storyboard中新增AutoLayout後,在程式碼中修改AutoLayout約束條件
如果是viewControl則AutoLayout適配寫在- (void)updateViewConstraints方法中修改約束; 如果是view則AutoLayout適配 則在- (void
JTable中新增元件後,改變當選中時的背景色
在JTable中新增元件後,當我們選中某一行時,我們會發現其他欄的背景色會變為table設定的選中背景色,而帶有元件的那一欄背景色卻不變 這時,我們需要在TableCellRenderer中新增一個填充方法 下面以JLable元件為例: import java.awt.C
“display:block-inline形式的Span或Div中新增文字後,導致Span或Div排版掉落、錯位”的原因及解決方法
在開始用display:inline-block的時候,只知道有baseline這麼一說,而且當時記筆記解決了空隙問題,百度一堆文章,什麼終極解決辦法等等,還記錄了一些問題,當時不明白,到今天才明白verticle-align的用法,原來可以這麼用,以後可以隨便玩inli
asp.net gridview中新增checkbox列,用於全部選中記錄或取消全選
方法一:使用javascript程式碼控制 前臺程式碼: <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
在GridView中新增按鈕後,如何觸發按鈕的各種事件?
//在GridView中新增按鈕後,如何觸發按鈕的各種事件? 1.在GridView的“編輯列”屬性視窗中,增加新的Botton列。 2.然後再該視窗右邊屬性中,將外觀項下的ButtonType設定一下,設定項有:如:Link、Button、Image。 3.屬性設定完成後
C# winform 上傳圖片,顯示圖片和gridview中新增按鈕
上傳圖片,顯示圖片using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using Syst
jQuery Mobile中submit按鈕提交後,其他元素DOM事件丟失
(1)現象: 引用jQuery Mobile,為頁面中的一個button繫結事件,使用submit按鈕提交表單。 結果,頁面“看起來”像是重新整理了,但是重新整理後button按鈕的事件丟失了。 例如: <input type="submit" id="submit1" val
7.2在框架中新增一個面板,背景色設為黃色,在面板中再新增兩個按鈕。
摩爾的Java學習筆記7.2 第七週作業: 1、在視窗(寬300,高200)中新增一個面板,面板的背景色為綠色,視窗在螢幕中央,不允許改變其大小,關閉視窗時程式結束執行; 2、在
winform中的datagridview有新增按鈕列,響應按鈕的點選事件
有兩個事件可以響應: 觸發事件是DataGridView的CellContentClick或CellClick事件 但是可惜的是兩個都不是專門響應按鈕列事件的, CellClick是單擊單元格任意部分發生 CellContentClick是單擊單元格內容時發生
在點選按鈕時,觸發複選框中選中的內容
package sftp; import java.awt.Component; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; i
所有input輸入完成後,改變按鈕顏色
ffffff nbsp rim fff val car cti chang rop $(function(){ $(‘input‘).on(‘input propertychange‘,function(){ if(($.trim($(‘.add1
vue 表格資料編輯,點選取消或者完成按鈕後,關閉編輯狀態沒有及時生效
點選編輯按鈕: 編輯狀態下,表格可以編輯。但是點選“確認”或者“取消”按鈕,列資料編輯狀態已經修改,但是檢視沒有改變。 頁面程式碼: 獲取當前行的index,並直接修改當前行用於判斷是否編輯狀態的資料為false(不可編輯); 根本原因是因為vue的檢視更新不及
vue 表格數據編輯,點擊取消或者完成按鈕後,關閉編輯狀態沒有及時生效
分享 inf bsp 狀態 修改 點擊 視圖 進行 解決 點擊編輯按鈕: 編輯狀態下,表格可以編輯。但是點擊“確認”或者“取消”按鈕,列數據編輯狀態已經修改,但是視圖沒有改變。 頁面代碼: 獲取當前行的index,並直接修改當前行用於判斷是否編輯狀態的數據為false
js或者jQuery模擬點選提交按鈕button,觸發提交操作
一般情況下提交form表單,都是手動點選提交按鈕,但是為了簡化使用者操作,有時候需要自動提交表單,或者做了其他某一個操作(非提交操作)之後自動提交表單,可以使用js或者jQuery模擬點選提交按鈕,然後提交,觸發提交操作 不只是提交表單,其他需要點選的時候都可以這麼寫,不用人手動點選而達到手
Button中使用模板後,Trigger中使用MouseOver時候,滑鼠滑動時候不能觸發響應
專案中遇到在重寫Window類,自定義一個最大,最小和關閉按鈕。此時出現一個問題,繪製最小按鈕的橫線的時候,MouseOver有觸發修改背景顏色,但是實際滑鼠划過去後,只有觸到橫線的時候才會觸發那個Trigger。但是提前設定了背景後就不會。 解決方法:將Border的Background設定成
使用SwingWorker 點選按鈕後,按鈕不讓點選,在處理完之後,顯示為可點
public void actionPerformed(ActionEvent e) { btn_convert.setEnabled(false); new ConvtSwingWorker().execute(); } private class Con
.NET新增引用後,但在程式碼中使用using時卻找不到名稱空間?
在同一個解決方案(.sln)下的A工程(.csproj)引用B工程的.dll後,在程式碼中使用using是無法找到對應名稱空間。 如圖1所示,MCC.Client引用了MCC.Business工程生成的.dll,但在圖2中,報了“Error 2 The type or namespace name '
點選jsp頁面按鈕後,禁用整個頁面的方法
我們經常會遇到這種情況,比如某個頁面上的付款按鈕,我們有可能連續點選的幾次,從而造成多次付款的情況,解決的方法為當點選第一次後,禁用整個頁面,顯示正在處理中畫面,這時需要如下程式碼 首先引入下面的js <script type="text/javascript"
ios7自定義返回按鈕後,右滑返回功能失效解決方法
http://blog.sina.com.cn/s/blog_9592635a0101fuk9.html -(void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; //開啟i