I am very new to asp.net.Plz help me.
I have a gridview with two columns named-property(template field) and value(template field). I need to bind the property column(ie,gridview- item template(label)) from database table 'properties'.Properties table fields are ID and PropertyName. How can I bind them??
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindView();
}
DataTable dt1 = new DataTable();
SqlDataAdapter da1 = new SqlDataAdapter("select ID,TypeName from ProductTypes", con);
da1.Fill(dt1);
DropDownList1.DataSource = dt1;
DropDownList1.DataValueField = "ID";
DropDownList1.DataTextField = "TypeName";
DropDownList1.DataBind();
}
public void BindView()
{
DataTable dt = new DataTable();
string sql = "select * from Properties";
con.Open();
SqlDataAdapter da = new SqlDataAdapter(sql, con);
da.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();
con.Close();
}
aspx code:
asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px"
CellPadding="3" GridLines="Horizontal"
style="z-index: 1; left: 52px; top: 230px; position: absolute; height: 133px; width: 344px">
<RowStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" />
<Columns>
<asp:TemplateField></asp:TemplateField>
<asp:TemplateField HeaderText="Property">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Eval("PropertyName") %>' ></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Value">
<ItemTemplate>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" />
<PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Right" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" />
<HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#F7F7F7" />
<AlternatingRowStyle BackColor="#F7F7F7" />
</asp:GridView>
Best Answer
aspx page :
dt - table column name should be "ID" & "PropertyName".