C#/ObjectDataSource/GridView

.NET

1 svar · 401 visningar · startad av Cita

Medlem sedan okt. 200427 inlägg
Trådstart#1

Om jag vill använda validering i en GridView så har jag uppfattat att jag måste använda TemplateField istället för BoundField.

Jag kan visa allt snyggt och prydligt, klicka på "Regigera", men när jag trycker på "Uppdatera" så uppdateras det inte... fälten stannar bara i redigeringsläge.

Kan någon se vad som blir fel med den här koden?

<asp:TemplateField HeaderText="Poäng" SortExpression="Poang">
        <EditItemTemplate>
                <asp:TextBox ID="txtPoang" runat="server" Text='<%# Bind("Poang") %>'></asp:TextBox>
         </EditItemTemplate>
         <ItemTemplate>
                 <asp:Label ID="lblPoang" runat="server" Text='<%# Bind("Poang") %>'></asp:Label>
         </ItemTemplate>
</asp:TemplateField>

Vad är det jag missat?

Medlem sedan jan. 20022 440 inlägg
#2

Absolut ingenting :) Värdet är felaktigt, din datasource säger ifrån att värdet inte är tillåtet och så kan du inte gå ur edit mode. Förslagsvis kontrollerar du i

void GridView_RowUpdating(Object sender, GridViewUpdateEventArgs e)
  {

    foreach (DictionaryEntry entry in e.NewValues)
    {
           if (e.NewValue == null)
                   Response.Write("Fyll i nåt")
      

    }

Typ...

248 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
114 ms — ändringar (db)