DataGrid使用心得(調用及連接數據庫等等)
在工作中遇到把DataGrid中綁定的后臺數據庫數據展示給用戶時把負數變?yōu)?的小問題,現(xiàn)在記錄下來。
例子中數據表示這個樣子的:

-------------------------------------------------------分割線--------------------------------------
1.DataGrid的調用
DataGrid對于ASP.NET開發(fā)來說是一種在vs 工具箱中找不到的控件,所以調用它需要手寫代碼:
<asp:DataGrid runat="server" CssClass="DataList" AutoGenerateColumns="False" Id="dgData"></asp:DataGrid>
注意:AutoGenerateColumns 是是否要求DataGrid自動生成列的意思,true為準許生成,false為不許
如果我們如示例那樣選擇不許,那么我們需要自己指定DataGrid的列,代碼就會擴展成:
<asp:DataGrid ID="dgData" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundColumn DataField="LARGE" HeaderText="大"></asp:BoundColumn>
<asp:BoundColumn DataField="SMALLS" HeaderText="小"></asp:BoundColumn>
</Columns>
</asp:DataGrid>
它綁定后的結果就會是:
如果是自動擴充列就是:

PS:如果我們這么寫呢?
<asp:DataGrid ID="dgData" runat="server" AutoGenerateColumns="true">
<Columns>
<asp:BoundColumn DataField="LARGE" HeaderText="大"></asp:BoundColumn>
<asp:BoundColumn DataField="SMALLS" HeaderText="小"></asp:BoundColumn>
</Columns>
</asp:DataGrid>
把自動擴充列的屬性選擇true,而下面我又給它加上自定義列,結果就是

2.連接數據庫進行操作
OracleConnection conn = new OracleConnection("Data Source=xxx;User Id=xxx;Password=xxx;");
string sqlcmd = "select * from test_123";
conn.Open();
OracleCommand cmd = new OracleCommand(sqlcmd,conn);
DataSet dsRet = new DataSet();
OracleDataAdapter ad = new OracleDataAdapter(cmd);
ad.Fill(dsRet);
conn.Close();
int i = dsRet.Tables[0].Rows.Count;
int j = dsRet.Tables[0].Columns.Count;
for (int k = 0; k < i; k++)
for (int m = 0; m < j; m++)
{
if (int.Parse(dsRet.Tables[0].Rows[k][m].ToString()) < 0)
dsRet.Tables[0].Rows[k][m] = "0";
}
dgData.DataSource = dsRet.Tables[0];
dgData.DataBind();
首先是連接數據庫的三板斧:
建立Connection和查詢串,裝入Commond,DataAdapter填充。
我用DataSet作為大容器,我們可以把DataSet理解為一個柜子,這個柜子有很多的抽屜,抽屜就是DataTable,這個抽屜里是一個一個的格子,格子里面放的東西就是我們查詢出來的數據,一個格子一個數兒。找到這些數兒就需要行列坐標來確定。
一般如果不指定數據表放在哪個抽屜,系統(tǒng)會默認為第0個。
由于DataTable是一個類,所以它的實例是一個對象,這個對象里面的東西它還是個對象,所以你不能認為 DataTable里面存的數值看著像是int型的,那么我的dsRet.Tables[0].Rows[k][m]就能當整型用,需要轉換操作。
這樣就能達到我最初想要的目的了。很基礎,不要見笑,我也是一邊學習一邊總結,這樣自己才能記住
相關文章
Visual Studio 2017新版發(fā)布 更強大!
Visual Studio 2017新版發(fā)布 更強大!對Visual Studio 2017感興趣的小伙伴們可以參考一下2017-05-05
asp.net(C#)使用QRCode生成圖片中心加Logo或圖像的二維碼實例
這篇文章主要介紹了asp.net(C#)使用QRCode生成圖片中心加Logo或圖像的二維碼,結合實例形式詳細分析了asp.net基于QRCode生成二維碼的具體實現(xiàn)技巧,需要的朋友可以參考下2016-06-06
ASP.NET使用Subtract方法獲取兩個日期之間的天數
本節(jié)主要介紹了ASP.NET使用Subtract方法獲取兩個日期之間的天數,需要的朋友可以參考下2014-08-08
asp.net 頁面轉向 Response.Redirect, Server.Transfer, Server.Exec
如果你讀過很多行業(yè)雜志和 ASP.NET 示例,你會發(fā)現(xiàn),大多數人使用 Response.Redirect 將用戶引導到另一個頁面,而另一些人好像偏愛于神秘的 Server.Transfer,那么,這二者有什么區(qū)別?2009-11-11
使用.NET升級助手將.NET?Framework項目升級為.NET?6
這篇文章介紹了使用.NET升級助手將.NET?Framework項目升級為.NET?6的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-04-04

