主頁(yè) > 知識(shí)庫(kù) > DataGrid使用心得(調(diào)用及連接數(shù)據(jù)庫(kù)等等)

DataGrid使用心得(調(diào)用及連接數(shù)據(jù)庫(kù)等等)

熱門標(biāo)簽:銀行業(yè)務(wù) 科大訊飛語(yǔ)音識(shí)別系統(tǒng) 服務(wù)器配置 電子圍欄 阿里云 團(tuán)購(gòu)網(wǎng)站 Mysql連接數(shù)設(shè)置 Linux服務(wù)器

在工作中遇到把DataGrid中綁定的后臺(tái)數(shù)據(jù)庫(kù)數(shù)據(jù)展示給用戶時(shí)把負(fù)數(shù)變?yōu)?的小問(wèn)題,現(xiàn)在記錄下來(lái)。

例子中數(shù)據(jù)表示這個(gè)樣子的:

-------------------------------------------------------分割線--------------------------------------
1.DataGrid的調(diào)用  

DataGrid對(duì)于ASP.NET開發(fā)來(lái)說(shuō)是一種在vs 工具箱中找不到的控件,所以調(diào)用它需要手寫代碼:

復(fù)制代碼 代碼如下:

asp:DataGrid runat="server" CssClass="DataList" AutoGenerateColumns="False" Id="dgData">/asp:DataGrid>

注意:AutoGenerateColumns 是是否要求DataGrid自動(dòng)生成列的意思,true為準(zhǔn)許生成,false為不許

如果我們?nèi)缡纠菢舆x擇不許,那么我們需要自己指定DataGrid的列,代碼就會(huì)擴(kuò)展成:

復(fù)制代碼 代碼如下:

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>

它綁定后的結(jié)果就會(huì)是:

如果是自動(dòng)擴(kuò)充列就是:

PS:如果我們這么寫呢?

復(fù)制代碼 代碼如下:

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>

把自動(dòng)擴(kuò)充列的屬性選擇true,而下面我又給它加上自定義列,結(jié)果就是

2.連接數(shù)據(jù)庫(kù)進(jìn)行操作

復(fù)制代碼 代碼如下:

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();

首先是連接數(shù)據(jù)庫(kù)的三板斧
建立Connection和查詢串,裝入Commond,DataAdapter填充。

我用DataSet作為大容器,我們可以把DataSet理解為一個(gè)柜子,這個(gè)柜子有很多的抽屜,抽屜就是DataTable,這個(gè)抽屜里是一個(gè)一個(gè)的格子,格子里面放的東西就是我們查詢出來(lái)的數(shù)據(jù),一個(gè)格子一個(gè)數(shù)兒。找到這些數(shù)兒就需要行列坐標(biāo)來(lái)確定。

一般如果不指定數(shù)據(jù)表放在哪個(gè)抽屜,系統(tǒng)會(huì)默認(rèn)為第0個(gè)。

由于DataTable是一個(gè)類,所以它的實(shí)例是一個(gè)對(duì)象,這個(gè)對(duì)象里面的東西它還是個(gè)對(duì)象,所以你不能認(rèn)為 DataTable里面存的數(shù)值看著像是int型的,那么我的dsRet.Tables[0].Rows[k][m]就能當(dāng)整型用,需要轉(zhuǎn)換操作。

這樣就能達(dá)到我最初想要的目的了。很基礎(chǔ),不要見笑,我也是一邊學(xué)習(xí)一邊總結(jié),這樣自己才能記住

您可能感興趣的文章:
  • dataGrid 多維表頭、表頭跨行跨列設(shè)計(jì)及綁定數(shù)據(jù)
  • asp.net DataGrid 中文字符排序的實(shí)現(xiàn)代碼
  • DataGrid 動(dòng)態(tài)添加模板列 實(shí)現(xiàn)代碼
  • asp.net DataGrid控件中彈出詳細(xì)信息窗口
  • 如何在DataGrid控件中實(shí)現(xiàn)自定義分頁(yè)
  • ASP.NET中為DataGrid添加合計(jì)字段

標(biāo)簽:大理 衡水 廣元 萍鄉(xiāng) 江蘇 蚌埠 衢州 棗莊

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《DataGrid使用心得(調(diào)用及連接數(shù)據(jù)庫(kù)等等)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266