نمایش اطلاعات GridView درداخل یک Table مجزا
شنبه 30 بهمن 1395در این مقاله نحوه نمایش دادن اطلاعات سطرهای انتخاب شده GridView توسط Asp.net به زبان سی شارپ آموزش داده می شود.
زبانه نشانه گذاری HTML
توسط کد های Html درون پروژه Asp.net یک GridView ایجاد میکنیم که شامل 2 ستونBoundFiled می باشد:
یکBoundFiled برای نمایش ID
یکBoundFiled برای نمایش Name
که با انتخاب هر یک از سطرها اطلاعات آن توسط یک جدول در پایین آن که کد های آن نیز در قسمت انتها نوشته شده است به نمایش می اید.
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnSelectedIndexChanged="OnSelectedIndexChanged"> <Columns> <asp:BoundField DataField="Id" HeaderText="Id" /> <asp:BoundField DataField="Name" HeaderText="Name" /> <asp:TemplateField HeaderText="Country" Visible="false"> <ItemTemplate> <asp:Label ID="lblDescription" runat="server" Text='<%# Eval("Description") %>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:ButtonField Text="Select" CommandName="Select"/> </Columns> </asp:GridView> <br /> <u>Selected Row:</u> <br /> <br /> <asp:FormView ID="FormView1" runat="server"> <ItemTemplate> <table border="0" cellpadding="0" cellspacing="0"> <tr> <td> ID: </td> <td> <%# Eval("Id") %> </td> </tr> <tr> <td> Name: </td> <td> <%# Eval("Name") %> </td> </tr> <tr> <td> Description: </td> <td> <%# Eval("Description") %> </td> </tr> </table> </ItemTemplate> </asp:FormView>
شما برای نوشتن کد های برنامه به زبانC# نیاز به Namespace زیر دارید
Using System .data;
برای مقدار دهی به رکورد های GridView از Datatable استفاده میکنیم وبه آن مقادیری دلخواه میدهیم.
protected void Page_Load(object sender, EventArgs e) { if (!this.IsPostBack) { DataTable dt = new DataTable(); dt.Columns.AddRange(new DataColumn[3] { new DataColumn("Id", typeof(int)), new DataColumn("Name", typeof(string)), new DataColumn("Description",typeof(string)) }); dt.Rows.Add(1, "Hossein Alizadeh", "Works as a scientist in USA."); dt.Rows.Add(2, "Saeed Mardani", "ASP.Net programmer and consultant in India."); dt.Rows.Add(3, "Akbar Elahi", "Content Writer in France."); dt.Rows.Add(4, "Mohsen Karimi", "Wild life photographer in Russia."); GridView1.DataSource = dt; GridView1.DataBind(); } }
نحوه نمایش دادن اطلاعات سطر های انتخاب شده در GridView
هنگامی که بر روی دکمه Select کلیک میشود رویداد OnselectedindexChange برای کنترل GridView به اجرا در می آید.
سپس مقادیر Id , Name به طور مستقیم از ستون BoundField که ایجاد کردیم انتخاب میشوند
سپس باید این اطلاعات را در داخل جدولی که برای نمایش مقادیر به صورت مجزا ایجاد کرده ایم نمایش دهیم برای این کار بصورت زیر عمل میکنیم
protected void OnSelectedIndexChanged(object sender, EventArgs e) { string id = GridView1.SelectedRow.Cells[0].Text; string name = GridView1.SelectedRow.Cells[1].Text; string description = (GridView1.SelectedRow.FindControl("lblDescription") as Label).Text; DataTable dt = new DataTable(); dt.Columns.AddRange(new DataColumn[3] { new DataColumn("Id", typeof(int)), new DataColumn("Name", typeof(string)), new DataColumn("Description",typeof(string)) }); dt.Rows.Add(id, name, description); FormView1.DataSource = dt; FormView1.DataBind(); }
- ASP.net
- 3k بازدید
- 3 تشکر