datagridview控制項的datasource有以下幾個型別:
datagridview 類支援標準的 windows 窗體資料繫結模型。這意味著資料來源可以是實現下列介面之一的任何型別:
陣列如果直接繫結到datagridview控制項,會並不見得得到你想要的結果。下面是乙個示例**:
private執行這段**,不會報錯,但是datagridview並不顯示intarr陣列裡面的100個不同數字,而是什麼都沒有。void button2_click(object sender, eventargs e)
for (int i = 0; i < 100; i++)
intarr[i] = (int)mylist[i];
this.datagridview1.datasource = intarr;
}
這裡有三個常用的方法可以把intarr的資料顯示到datagridview裡。
1. 把資料放入到乙個datatable裡面。
private下面是執行結果:void button2_click(object sender, eventargs e)
for (int i = 0; i < 100; i++)
intarr[i] = (int)mylist[i];
datatable dt = new datatable();
datacolumn dc = new datacolumn("number");
dt.columns.add(dc);
foreach (int s in intarr)
this.datagridview1.datasource = dt;
}
因為datasource綁的是物件屬性,所以利用包裝容器類,建乙個物件陣列也可以達到目的。
protected上面的item類就是乙個包裝容器類。 **執行的結果class item
public
int value
set }}
private
void button2_click(object sender, eventargs e)
for (int i = 0; i < 100; i++)
intarr[i] = (int)mylist[i];
item itemarr = new item[100];
for (int i = 0; i < 100; i++)
itemarr[i] = new item(intarr[i]);
this.datagridview1.datasource = itemarr;
}
這種方法對應的最簡單。直接對應的把陣列裡面的每個元素轉換成乙個陣列類顯示
private這是執行結果圖,number就是列名void button2_click(object sender, eventargs e)
for (int i = 0; i < 100; i++)
intarr[i] = (int)mylist[i];
this.datagridview1.datasource = (from number in intarr select new ).toarray();
}
當然肯定還有其他的方法來實現,這裡只是舉三個例子作為乙個常用的方法。
如何將網域名稱繫結到hexo
1.擁有乙個githubname.github.io可以正常訪問的網域名稱,如我的github部落格 2.購買網域名稱,個人推薦阿里雲,首年年費比較便宜,適合個人折騰,部落格建議com,me,info,pro 專家 mobi kindle電子書的格式 再不濟可以選擇tech,cc之類的,國外可以參考...
如何將網絡卡中斷繫結到特定cpu
在cpu單核的時代,網絡卡收發包處理都會有乙個cpu負責,但隨著多核cpu的出現,還按照以前網絡卡中斷有乙個cpu處理的話,明顯浪費cpu資源,基於此出現了網絡卡中斷繫結 特定cpu的技術,目的當然是為了提高cpu利用率,將網絡卡中斷均衡的分配到各個cpu.首先,簡單說一下中斷,什麼是中斷呢?就是各...
如何將 txt檔案讀入到陣列
格式是 intput.txt中的示例數字為 4 6 8 10 那麼問題來了,如何讀取這段數字,博主的思路是把這個讀入到陣列裡,然後乙個乙個調出來驗證猜想就好了,輸出到檔案也方便。但是,就是這樣乙個輸出到陣列,折騰了博主好久 博主很菜,勿噴。當用fgets 函式時,它每次只讀取乙個位元組,就是說,a ...