1. 程式人生 > >C# winform DataGridView中新增按鈕

C# winform DataGridView中新增按鈕

首先,一頭霧水,百度之。資料如下:

注意:DataGridView控制元件是從.NET Framework 2.0版本開始追加的。

在DataGridView的列中想表示和LinkLabel控制元件一樣的連結時,可以使用DataGridViewLinkColumn來實現。DataGridViewLinkColumn類的使用和在這裡的DataGridViewButtonColumn使用方法基本相同。

下面在例子是在DataGridView中追加連結列的程式碼。

[VB.NET] 'DataGridViewLinkColumn作成 Dim column As New DataGridViewLinkColumn() '設定列的名字 column.Name = "Link" '所有的連結文字列表示為"點選閱覽" column.UseColumnTextForLinkValue = True column.Text = "點選閱覽" '滑鼠停留在連結上時顯示下劃線 column.LinkBehavior = LinkBehavior.HoverUnderline '設定為不能自動訪問 column.TrackVisitedState = True '向DataGridView追加 DataGridView1.Columns.Add(column)

[C#] //DataGridViewLinkColumn作成 DataGridViewLinkColumn column = new DataGridViewLinkColumn(); //設定列的名字 column.Name = "Link"; //所有的連結文字列表示為"點選閱覽" column.UseColumnTextForLinkValue = true; column.Text = "點選閱覽"; //滑鼠停留在連結上時顯示下劃線 column.LinkBehavior = LinkBehavior.HoverUnderline; //設定為不能自動訪問 column.TrackVisitedState = true; //向DataGridView追加 DataGridView1.Columns.Add(column);

獲得連結被點選

獲得連結被點選的方法也和DataGridViewButtonColumn一樣,使用DataGridView.CellContentClick事件實現。

補充:CellClick事件,在單元格內不是連結的部分點選時也會被觸發。

下面的例子就是獲得第幾行的連結被點選的程式碼。

[VB.NET] 'CellContentClick事件處理器 Private Sub DataGridView1_CellContentClick(ByVal sender As Object, _ ByVal e As DataGridViewCellEventArgs) _ Handles DataGridView1.CellContentClick Dim dgv As DataGridView = CType(sender, DataGridView '如果是"Link"列,被點選 If dgv.Columns(e.ColumnIndex).Name = "Link" Then MessageBox.Show((e.RowIndex.ToString() + _ "行的連結被點選了。")) '已經訪問 Dim cell As DataGridViewLinkCell = _ CType(dgv(e.ColumnIndex, e.RowIndex), DataGridViewLinkCell) cell.LinkVisited = True End If End Sub

[C#] //CellContentClick事件處理器 private void DataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { DataGridView dgv = (DataGridView)sender; //如果是"Link"列,被點選 if (dgv.Columns[e.ColumnIndex].Name == "Link" { MessageBox.Show(e.RowIndex.ToString() + "行的連結被點選了。"); //已經訪問 DataGridViewLinkCell cell = (DataGridViewLinkCell)dgv[e.ColumnIndex, e.RowIndex]; cell.LinkVisited = true; } }

然後,照葫蘆畫瓢唄。


仔細看微軟的提示,一切都變得簡單。

然而,又出現了點問題

datagridview中新增按鈕列,怎麼編輯按鈕列顯示的文字?編輯text屬性,沒有效果。

依然百度,資料如下:

在  編輯列——外觀——DefaultCellStyle點選...,會出現CellStyle生成器,NullValue就是你想要的
搞定,收工,哈哈哈。

相關推薦

C# winform DataGridView新增按鈕

首先,一頭霧水,百度之。資料如下: 注意:DataGridView控制元件是從.NET Framework 2.0版本開始追加的。 在DataGridView的列中想表示和LinkLabel控制元件一樣的連結時,可以使用DataGridViewLinkColumn來

C# winform 上傳圖片,顯示圖片和gridview新增按鈕

上傳圖片,顯示圖片using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using Syst

winformdatagridview新增按鈕列,響應按鈕的點選事件

有兩個事件可以響應: 觸發事件是DataGridView的CellContentClick或CellClick事件 但是可惜的是兩個都不是專門響應按鈕列事件的, CellClick是單擊單元格任意部分發生 CellContentClick是單擊單元格內容時發生

c# winform DataGridView匯出資料到Excel,可以匯出當前頁和全部資料

關鍵字: datagridview 匯出 資料 excel 當前頁 全部 準備工作就是可以分頁的DataGridView,和兩個按鈕,一個用來匯出當前頁資料到Excel,一個用來匯出全部資料到Excel 沒有使用SaveFileDialog,但卻可以彈出儲存對話方塊

C# 在datagridview的單元格加入button按鈕

private void dgv_XiaoShouChuKuMingXi_CellClick(object sender, DataGridViewCellEventArgs e) { this.dgv_XiaoShouChuKuMi

C#對DataGridView的資料進行新增、修改、刪除操作c#操作datatable

1.建立表 DataSet ds=new DataSet(); DataTable dt=new DataTable("User"); ds.Add(dt); dt.Columns.Add("user_name",typeof(string)); dt.Columns.Ad

C#的DataGridView,如何選中新新增的行

但是新增新的行之後,資料多了之後,由於檢視沒有移動最新行,所以就不能及時看到新新增的行: 所以需要: 當新增一行後,選中當前新新增的行。 【解決過程】 1.參考: 去試試: ? 1 dgvSearchResult.Rows[dgvSearchResult.Rows.Count - 1].Se

C# WinForm DataGridView 給標題列增加序號及格式化某個字段

bin blog bind get end 字段 prop () ring DataGridView 給標題列增加序號 private void dataGridView1_DataBindingComplete(object sender, DataGridView

C# winform DataGridView 常見屬性

調用 button foreach cal left mil style屬性 高性能 使用 C# winform DataGridView 屬性說明① 取得或者修改當前單元格的內容 ② 設定單元格只讀 ③ 不顯示最下面的新行 ④

UITableView新增按鈕不響應問題——UITableViewCell綁定了錯誤的View

目錄 問題 發現 原因 解決 只是為了做個記錄 問題 在某一特定型號和版本的實體機上,UITableView中新增按鈕不響應問題,但是用了相同版本的模擬器都沒有問題 發現 偶爾的一次在awakeFromNib中新增東西

C#(winform)為button新增背景圖片,並去掉各種邊框

  1.既然是新增背景圖片     所以這裡應該使用 Button.BackgroudImage = "" ;來設定圖片          而不應該使用  Button.Image = "";&n

C# Winform datagridview控制元件加序列號

//增加序列號 //該事件需要在datagridview 控制元件事件裡點出來,直接寫裡面的程式碼即可。 private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)

【機房重構】DataGridView新增複選框

實現效果 DataGridView列頭新增複選框 //宣告靜態類變數 private static DataGridViewCheckBoxColumn checkColumn = null; private void cmbJiBie_SelectedIndexChang

C# 在Excel新增自動篩選器並執行篩選

       當Excel工作表中的資料十分龐大時,我們可以在某個選定的區域內新增“文字篩選器”、“數字篩選器”、“顏色篩選器”和“日期篩選器”等,對資料進行過濾。過濾後的工作表會顯示所需資料並隱藏其餘資料。         如下所示的工作表中,我們可以在“種類”所在的列新

leaflet 在地圖popup彈框新增按鈕並點選響應(vue2leaflet),設定popup的content屬性,新增button

效果如圖,點選【進入】按鈕,彈出alert提示框。當然這裡可以把alert換成其他響應需求。  首先給popup的content新增button: <l-popup :content="profile1-1+ '<br><button id=

c# 選中dataGridView的一行將其刪除

刪除有兩種情況: 1.你只是手工刪除dataGridView選中行,資料庫裡的這行資料並沒有改變,程式碼這樣寫: if (this.dgvXFLB.SelectedRows.Count > 0) { DataRowView drv = dgvXFLB.SelectedR

C# Winform DataGridView實現行[Row]的上下移動........

蠢方法..但是還是蠻實用的...這裡只改變了DataGridView的資料顯示,資料來源DataTable沒有任何改變 /*DataGridView 實現行[Row]的上下移動,我這裡用到了SelectedRows[0],而沒用CurrentRow是有原因的 主要是

C#將dataGridView顯示的資料匯出到Excel(大資料量超實用版)

       開發中很多情況下需要將dataGridView控制元件中顯示的資料結果以Excel或者Word的形式匯出來,本例就來實現這個功能。由於從資料庫中查找出某些資料列可能沒必要顯示出來,在dataGridView中將對應的列隱藏了,這時匯出時就會將隱藏的列匯出來,顯

[轉]C#WinForm應用程式——新增選單欄MenuStrip

【C#WinForm應用程式——新增選單欄MenuStrip】 2018年08月09日 10:53:07 鹹魚不會游泳 閱讀數:1360 1. 拖動MenuStrip到設計視窗 2. 編輯彈出和退出兩個選單,設定快捷鍵需要在前面加&  

c#將dataGridView顯示的資料匯出到excel

開發中很多情況下需要將dataGridView控制元件中顯示的資料結果以Excel或者Word的形式匯出來,本例就來實現這個功能。方法:先將dataGridView中顯示的部分存進DataTable,然後就DataTable匯出到Excel。 首先,新增引用: 第二,建立