Thông tin tài liệu:
Part 10Trong mẹo lập trinh hôm nay chúng tôi sẽ hướng dẫn các bạn cách làm thế nào để chương trình tự độngtính tổng của một cột trong DataGrid, và hiển thị tổng trong footer của DataGrid.Bạn sẽ dùng một Web Form (calcTotals.aspx) và một đoạn code sau lớp tập tin này (calcTotals.aspx.cs)Sau đây là code calcTotals.aspx
Nội dung trích xuất từ tài liệu:
Mẹo Lập Trình p 10 Part 10Description of FileĐằng sau WEB Form Codenamespace UploadSample {public class Main : System.Web.UI.Page {protected System.Web.UI.HtmlControls.HtmlInputFile UP_FILE;protected System.Web.UI.WebControls.TextBox txtDescription;protected System.Web.UI.WebControls.Label txtMessage;protected System.Int32 FileLength = 0;protected void Button_Submit(System.Object sender, System.EventArgs e) {System.Web.HttpPostedFile UpFile = UP_FILE.PostedFile;FileLength = UpFile.ContentLength;try {if (FileLength == 0) {txtMessage.Text = * You must pick a file to upload;} else {System.Byte[] FileByteArray = new System.Byte[FileLength];System.IO.Stream StreamObject = UpFile.InputStream;StreamObject.Read(FileByteArray,0,FileLength);System.Data.OleDb.OleDbConnection Con = newSystem.Data.OleDb.OleDbConnection(Provider=SQLOLEDB;Data Source=localhost; +Integrated Security=SSPI;Initial Catalog=northwind);System.String SqlCmd = INSERT INTO Images (Image, ContentType, ImageDescription, ByteSize)VALUES (?, ?, ?, ?);System.Data.OleDb.OleDbCommand OleDbCmdObj = new 66Copyright © http://vndownloads.netSystem.Data.OleDb.OleDbCommand(SqlCmd, Con);OleDbCmdObj.Parameters.Add(@Image, System.Data.OleDb.OleDbType.Binary, FileLength).Value =FileByteArray;OleDbCmdObj.Parameters.Add(@ContentType, System.Data.OleDb.OleDbType.VarChar,50).Value =UpFile.ContentType;OleDbCmdObj.Parameters.Add(@ImageDescription,System.Data.OleDb.OleDbType.VarChar,100).Value = txtDescription.Text;OleDbCmdObj.Parameters.Add(@ByteSize, System.Data.OleDb.OleDbType.VarChar,100).Value =UpFile.ContentLength;Con.Open();OleDbCmdObj.ExecuteNonQuery();Con.Close();txtMessage.Text = * Your image has been uploaded;}} catch (System.Exception ex) {txtMessage.Text = ex.Message.ToString();}}}}Bởi vì giới hạn của kiểu data type Image là 2,147,483,647 và hầu hết mọi người sẽ không upload một tậptin có kích thước lớn như vậy vào trong một database nhưng bởi vì không có OleDbType.Image chúng taphải sử dụng OleDbType.Binary với giới hạn là 8000 Byte và chúng ta set kích thước trong ví dụ này:OleDbCmdObj.Parameters.Add(@Image, System.Data.OleDb.OleDbType.Binary, FileLength).Value =FileByteArray;Thêm một trường tổng vào trong một DataGrid (ASP.NET)Trong mẹo lập trinh hôm nay chúng tôi sẽ hướng dẫn các bạn cách làm thế nào để chương trình tự độngtính tổng của một cột trong DataGrid, và hiển thị tổng trong footer của DataGrid.Bạn sẽ dùng một Web Form (calcTotals.aspx) và một đoạn code sau lớp tập tin này (calcTotals.aspx.cs)Sau đây là code calcTotals.aspx:Copyright © http://vndownloads.netFooterStyle-ForeColor=WhiteFooterStyle-BackColor=BlueOnItemDataBound=MyDataGrid_ItemDataBoundShowFooter=True>Trong Web Form bạn dùng dấu @ để trang sử dụng code trong phần khai báo. thuộc tính SRC chỉ codesẽ được biên dịch sử dụng bộ biên dịch JIT.Code trong lớp sẽ xử lý 2 sự kiện Page_Load event và OnItemDataBound và một phương thức Private làCalcTotalusing System;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;using System.Data;using System.Data.SqlClient;namespace myApp{public class calcTotals : Page{protected DataGrid MyGrid;private double runningTotal = 0;}}protected void Page_Load(object sender, EventArgs e){SqlConnection myConnection = new SqlConnection(server=Localhost;database=pubs;uid=sa;pwd=;);SqlCommand myCommand = new SqlCommand(SELECT title, price FROM Titles WHERE price > 0,myConnection);try{myConnection.Open();MyGrid.DataSource = myCommand.ExecuteReader();MyGrid.DataBind();myConnection.Close();}catch(Exception ex){HttpContext.Current.Response.Write(ex.ToString());}}private void CalcTotal(string _price){ 68Copyright © http://vndownloads.nettry{runningTotal += Double.Parse(_price);}catch{}}Sự kiện MyGrid_ItemDataBoundpublic void MyDataGrid_ItemDataBound(object sender, DataGridItemEventArgs e){if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){CalcTotal( e.Item.Cells[1].Text );e.Item.Cells[1].Text = string.Format({0:c}, Convert.ToDouble(e.Item.Cells[1].Text));}else if(e.Item.ItemType == ListItemType.Footer ){e.Item.Cells[0].Text=Total;e.Item.Cells[1].Text = string.Format({0:c}, runningTotal);}}Truy cập thông tin của DataGrid (.NET)Chúng tôi có một DataGrid gọi là dgAges, một Label gọi lblName, và một Label gọi lblAge. Nó có một cộtSelect, một cột Bound (Name), và một cột Template (Age)yrs. oldCurrent Selection:Name: Age: Điều đầu tiên bạn nghĩ là sử dụng thu ...