私はgridviewコントロールに1つの問題があり、多分誰かが私を助けることができます。
グリッドビューには、データベースからのフィールドCountry
があります。
グリッドビューでデータを編集できるようにしました。誰かがグリッドビュー編集ボタンをクリックすると、グリッドビューが表示され、そのフィールドの新しい値を選択できるようになります。edititemtemplateのドロップダウンリストgridview asp.net
しかし、私は、[編集]をクリックしていたとき、私はこのエラーになっています:
'種類 "System.Webの集会で' System.Web.UI.WebControls.ListItem、バージョン= 4.0.0.0、文化を=中立、PublicKeyToken = b03f5f7f11d50a3a 'はシリアル化可能とマークされていません。ここで
私は例から、国のほとんどを除いて、短いバージョンでは、そのフィールドを持っているコードです:
<asp:TemplateField HeaderText="Country" SortExpression="Country">
<ItemTemplate>
<asp:Label ID="Label1" runat="server"
Text='<%# Bind("Country") %>'>
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList id="ddlCountry"
SelectedItem='<%# Bind("Country") %>'
runat="server">
<asp:ListItem Value="N/A">Please select</asp:ListItem>
<asp:ListItem Value="US">United States</asp:ListItem>
<asp:ListItem Value="AF">Afghanistan</asp:ListItem>
<asp:ListItem Value="AL">Albania</asp:ListItem>
<asp:ListItem Value="DZ">Algeria</asp:ListItem>
<asp:ListItem Value="AS">American Samoa</asp:ListItem>
<asp:ListItem Value="AD">Andorra</asp:ListItem>
<asp:ListItem Value="AO">Angola</asp:ListItem>
<asp:ListItem Value="AI">Anguilla</asp:ListItem>
<asp:ListItem Value="AQ">Antarctica</asp:ListItem>
<asp:ListItem Value="AG">Antigua And Barbuda</asp:ListItem>
<asp:ListItem Value="AR">Argentina</asp:ListItem>
<asp:ListItem Value="AM">Armenia</asp:ListItem>
<asp:ListItem Value="AW">Aruba</asp:ListItem>
<asp:ListItem Value="AU">Australia</asp:ListItem>
<asp:ListItem Value="AT">Austria</asp:ListItem>
<asp:ListItem Value="ZR">Zaire</asp:ListItem>
<asp:ListItem Value="ZM">Zambia</asp:ListItem>
<asp:ListItem Value="ZW">Zimbabwe</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
あなたの国のデータソースを作成した後、DropDownListをedittemplateに配置し、コードソースからデータソースを割り当ててみましたか?これにより、明示的にListItemオブジェクトをGridViewに作成します。ここでは、データソースを使用した長年の例を示します。http://msdn.microsoft.com/en-us/library/ms972948.aspx – Josh
それは動作します、ありがとう、多分私は答えとしてマークすることができますので、答えに投稿してください。もう一度ありがとう – Laziale
ちょうどでした。ありがとう! – Josh