2011-12-06 21 views
2

私は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> 
+1

あなたの国のデータソースを作成した後、DropDownListをedittemplateに配置し、コードソースからデータソースを割り当ててみましたか?これにより、明示的にListItemオブジェクトをGridViewに作成します。ここでは、データソースを使用した長年の例を示します。http://msdn.microsoft.com/en-us/library/ms972948.aspx – Josh

+0

それは動作します、ありがとう、多分私は答えとしてマークすることができますので、答えに投稿してください。もう一度ありがとう – Laziale

+0

ちょうどでした。ありがとう! – Josh

答えて

2

あなたの国のデータソースを作成した後、DropDownListをedittemplateに配置し、コードソースからデータソースを割り当ててみましたか?これにより、明示的にListItemオブジェクトをGridViewに作成します。ここでは、データソースを使用した長年の例があります:msdn.microsoft.com/en-us/library/ms972948.aspx

2

使用SelectedValue代わりSelectedItemプロパティの。

Found here

関連する問題