何を探しているのかわかりませんが、描いた図で説明できます。
以下の最初のものは、グリッドビューに表示される「ユーザー入力」であり、ユーザーは詳細を入力する必要があります。(テキストボックス)はテキストボックスであり、その横の詳細は入力例です。
User Inputs:
Items Quantity Unit Price Total
(textBox)abc (textBox)2 (textBox) 100 (textBox) 200
(textBox)def (textBox)1 (textBox) 150 (textBox) 150
保存ボタンをクリックすると(ボタンは表示されませんでした。申し訳ありません)、以下の「データベースに保存」のように詳細がデータベースに保存されます。
Save in Database:
ID Items Quantity UnitPrice Total
10001 Abc , def 2,1 100,150 200,150
また、ユーザーが詳細を表示したい場合は、以下の「結果の表示」のように詳細を表示する必要があります。
Display Results:
ID:10001
Items Quantity Unit Price Total
Abc 2 100 200
def 1 150 150
この説明が理解できることを願っています。私は説明もASPもかなり苦手です。私はこれを行うオプションがないので、C#またはVBでこれをコーディングするのを手伝ってください。どうもありがとうございます。
コード例:
string sql = "INSERT INTO Products(Name, ProductImage, OriginalPrice, DiscountPrice, Descriptions,StockQuantity, Category) VALUES (@Name, @ProdImage, @OriPrice, @DisPrice, @Descrp, @Quantity, @Category)";
try
{
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
SqlParameter[] param = new SqlParameter[7];
param[0] = new SqlParameter("@Name", SqlDbType.VarChar,100);
param[1] = new SqlParameter("@ProdImage", SqlDbType.VarChar, 100);
param[2] = new SqlParameter("@OriPrice", SqlDbType.Float );
param[3] = new SqlParameter("@DisPrice", SqlDbType.Float );
param[4] = new SqlParameter("@Descrp", SqlDbType.VarChar,50);
param[5] = new SqlParameter("@Quantity", SqlDbType.Int);
param[6] = new SqlParameter("@Category", SqlDbType.VarChar,50);
param[0].Value = name;
param[1].Value = image;
param[2].Value = OriPrice;
param[3].Value = disPrice;
param[4].Value = description;
param[5].Value = quantity;
param[6].Value = Category;
for (int i = 0; i < param.Length; i++)
{
cmd.Parameters.Add(param[i]);
}
cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
現在のコード:
private string CreateRow(DataTable data, Int32 index, String ColumnName)
{
String[] quan = data.Rows[0][ColumnName].ToString().Split(',');
if (quan.Length >= index)
return quan[index].ToString();
else
return "";
}
protected void GridView2_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("");
string sql = "SELECT * FROM SalesOrder WHERE ID = 10010";
DataSet DataFromDataBase = new DataSet();
SqlDataAdapter adp = new SqlDataAdapter("SELECT * FROM SalesOrder WHERE ID = 10010", conn);
adp.Fill(DataFromDataBase);
DataTable TempData = new DataTable();
TempData.Columns.Add("Quantity", typeof(string));
TempData.Columns.Add("UnitPrice", typeof(string));
for (Int32 i = 0; i < 5; i++)
{
DataRow row = TempData.NewRow();
row[0] = CreateRow(DataFromDataBase, i, "Quantity");
row[1] = CreateRow(DataFromDataBase , i, "UnitPrice");
TempData.Rows.Add(row);
}
}