webForumDet fria alternativet

C#/ObjectDataSource/GridView

.NET

1 svar · 384 visningar · startad av Cita

Medlem sedan okt. 200427 inlägg
Frågan#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...

263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)