InsertItemTemplate と EditItemTemplate を含む asp:FormView があります。どちらも分離コード関数の動作を除いてほとんど同じです。同一とは、両方のテンプレートに同じ ID を持つコントロールがあることを意味します。これらのテンプレートに UpdatePanels を追加するまで、すべてがうまく機能しているように見えました。「タイプ 'ASP.quotation_quote_aspx' には、'MeasurmentUnits' の定義が既に含まれています」と表示されます。
サンプルは次のとおりです。
<asp:FormView ID="QuoteMaterialForm" runat="server" DataSourceID="QuoteMaterialDS" DataKeyNames="ID" DefaultMode="Edit" OnLoad="QuoteMaterialForm_Load" >
<InsertItemTemplate>
<asp:UpdatePanel ID="MaterialUpdatePanel1" runat="server">
<ContentTemplate>
<table class="form">
<tr>
<td>
Measurment units
</td>
<td>
<asp:RadioButtonList ID="MeasurmentUnits" runat="server" AutoPostBack="true"
onclick="needToConfirm = true;" RepeatDirection="Horizontal"
RepeatLayout="Flow" SelectedValue='<%# Bind("MeasurementUnits") %>'>
<asp:ListItem Selected="True" Value="0">Imperial</asp:ListItem>
<asp:ListItem Value="1">Metric</asp:ListItem>
</asp:RadioButtonList>
</td>
</tr>
</ContentTemplate>
</asp:UpdatePanel>
</InsertItemTemplate>
<EditItemTemplate>
<asp:UpdatePanel ID="MaterialUpdatePanel1" runat="server">
<ContentTemplate>
<table class="form">
<tr>
<td>
Measurment units
</td>
<td>
<asp:RadioButtonList ID="MeasurmentUnits" runat="server" AutoPostBack="true"
onclick="needToConfirm = true;" RepeatDirection="Horizontal"
RepeatLayout="Flow" SelectedValue='<%# Bind("MeasurementUnits") %>'>
<asp:ListItem Selected="True" Value="0">Imperial</asp:ListItem>
<asp:ListItem Value="1">Metric</asp:ListItem>
</asp:RadioButtonList>
</td>
</tr>
</ContentTemplate>
</asp:UpdatePanel>
</EditItemTemplate>
</asp:FormView>
テンプレートから UpdatePanels を削除すると、そのようなエラーは発生しません。
アドバイスをお願いします。=(