В моей таблице есть столбец с именем ColumnType.ColumnType должен иметь TextBox или DropDownlist на основе значений из столбца TypeID.Если значение в столбце TypeID равно 0,2,3, то должно появиться пустое текстовое поле, а если значение равно 1, пустой DDL должен отображаться на странице.
Так выглядит таблица при ее создании.из кода: https://jsfiddle.net/769825dz/7/
Это код C #, где я просто беру значения из процедуры и отправляю их для отображения в aspx столбец за столбцом:
LogicTableAdapters.getCharacteristicTableAdapter getObChar = new LogicTableAdapters.getCharacteristicTableAdapter();
DataTable dtObChar = getObChar.getCharacteristicTableAdapter(Convert.ToInt32("1"));
DataTable dtCh = new DataTable();
dtCh.Columns.AddRange(new DataColumn[4]{ new DataColumn("CharacteristicID", typeof(string)), new DataColumn("CharacteristicName", typeof(string)), new DataColumn("ColumnType", typeof(string)), new DataColumn("TypeID", typeof(int)),});
foreach (DataRow dr in dtObChar.Rows)
{
dtCh.Rows.Add(dr["CharacteristicID"].ToString(), dr["CharacteristicName"].ToString(), dr["ColumnType"] == DBNull.Value ? null : dr["TypeID"].ToString());
}
gvObjCharacteristic.DataSource = dtCh;
gvObjCharacteristic.DataBind();
Это aspxчасть, где gridview генерируется из процедуры:
<asp:GridView ID="gvObjCharacteristic" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None" AutoGenerateColumns="False">
<AlternatingRowStyle BackColor="White" />
<Columns>
<asp:TemplateField HeaderText="CharacteristicID">
<ItemTemplate>
<asp:Label ID="CharacteristicID" runat="server" class="ObjekatID" Width="118px" Height="26px" Style="text-align: center" Font-Names="Georgia" margin-Left="100px" Text='<%# Bind("CharacteristicID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="CharacteristicName">
<ItemTemplate>
<asp:Label ID="CharacteristicName" runat="server" Width="118px" Height="26px" Style="text-align: center" Font-Names="Georgia" margin-Left="100px" Text='<%# Bind("CharacteristicName") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="ColumnType">
<ItemTemplate>
<asp:Label ID="ColumnType" runat="server" Width="118px" Height="26px" Style="text-align: center" Font-Names="Georgia" margin-Left="100px" Text='<%# Bind("ColumnType") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="TypeID">
<ItemTemplate>
<asp:Label ID="TypeID" runat="server" Width="118px" Height="26px" Font-Names="Georgia" margin-Left="100px" Text='<%# Bind("TypeID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
Я думаю, мне нужен код в части c #.
Может кто-нибудь помочь мне с этим?