[C#]DataGridViewLinkColumn Text屬性設定後文字沒顯示
今天在寫Winform小程式時,想要在DataGridView中寫一個簡單的刪除功能,我就在我的程式中這樣寫:
tColumn.HeaderText = "刪除";
tColumn.Text = "刪除";
dataGridView1.Columns.Add(tColumn);
string gConnectionString = "server=.;database=Northwind;uid=sa;pwd=";
DataTable tDt = getDataTable(gConnectionString, "Select * from Orders");
dataGridView1.DataSource = tDt;
new一個LinkColumn,設定Header文字跟Cell中要顯示的文字,並放到第一欄,想說這麼簡單的功能,應該單純到不行吧,結果出來的畫面長這樣:
Header的文字出來了,但是Cell裡面卻還是空的,後來在程式中加入tColumn.UseColumnTextForLinkValue = true;,這個問題才被解決,程式如下:
tColumn.UseColumnTextForLinkValue = true;
tColumn.HeaderText = "刪除";
tColumn.Text = "刪除";
dataGridView1.Columns.Add(tColumn);
string gConnectionString = "server=.;database=Northwind;uid=sa;pwd=";
DataTable tDt = getDataTable(gConnectionString, "Select * from Orders");
dataGridView1.DataSource = tDt;
看了一下MSDN:DataGridViewLinkColumn.UseColumnTextForLinkValue Property的說明:
Gets or sets a value indicating whether the Text property value is displayed as the link text.
如果要搭配刪除的功能就很簡單了,在CellClick的事件中加入如下程式碼,這樣就完成囉。
{
if (dataGridView1.Columns[e.ColumnIndex].GetType() == typeof(DataGridViewLinkColumn))
{
//執行刪除
}
}
游舒帆 (gipi) 探索原力Co-founder,曾任TutorABC協理與鼎新電腦總監,並曾獲選兩屆微軟最有價值專家 ( MVP ),離開職場後創辦探索原力,致力於協助青少年培養面對未來的能力。認為教育與組織育才其實息息相關,都是在為未來儲備能量,2018年起成立為期一年的專題課程《職涯躍升的關鍵24堂課》,為培養台灣未來的領袖而努力。 |