Avatar billede chw Nybegynder
24. februar 2006 - 00:38 Der er 11 kommentarer og
1 løsning

script callback og så updatere grid

hej, jeg har leget lidt med script callback.

Jeg har en knap på min form som kalder via script callback.

lige nu gør jeg bare således:

private string _callbackArg;

    void ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)
    {
        _callbackArg = eventArgument;
    }

    string ICallbackEventHandler.GetCallbackResult()
    {
        return RaiseCallbackEvent(_callbackArg);
    }

    protected virtual string RaiseCallbackEvent(string eventArgument)
    {
        Button1_Click(null, null);
     
        return "s";
    }

Button1_click sætter min datasource til griddet og binder, men den opdatere ikke mit grid. Hvordan får jeg den til det, hvis man altså kan
Avatar billede dr_chaos Nybegynder
24. februar 2006 - 08:49 #1
hvis den skal gøre det uden postback skal du kalde databind på gridviewet og så renderer html outputtet.
Avatar billede chw Nybegynder
24. februar 2006 - 10:59 #2
hvordan renderer man det? Det eksempel jeg har skrevet her, sender en streng tilbage til siden, men det behøver jeg jo ikke, jeg skal blot ha mit grid opdateret og vist
Avatar billede dr_chaos Nybegynder
24. februar 2006 - 11:02 #3
du skal returnere gridviewet som en html streng.
Ellers skal du droppe clientcallback.
eller du skal kigge på atlas.asp.net som er et ajax framework. Det har et updatepanell som kan klare det hele.
Men det er stadigvæk i beta og anbefales ikke til sider som skal i produktion
Avatar billede dr_chaos Nybegynder
24. februar 2006 - 11:02 #4
Jeg har selv brugt det at returnere gridviewet som en streng og det virker
Avatar billede chw Nybegynder
24. februar 2006 - 11:09 #5
så du returnere bare gridview1.toString()? hvad gør du så i javascriptet?
Avatar billede dr_chaos Nybegynder
24. februar 2006 - 11:10 #6
jeg gør noget andet 2 min.
Avatar billede dr_chaos Nybegynder
24. februar 2006 - 11:13 #7
java script:

<script type="text/javascript">
   
    function ModtagResultat(rValue)
    {
    var o = rValue.split("€¤¤€¤¤€¤¤€¤¤€");

  if(o[0] != null && o[0] != '')
      {
      document.getElementById('repTraeDiv').innerHTML = o[0]; 
      }
   
    if(o[1] != null && o[1] != '')
      {
      document.getElementById('RepGridDiv').innerHTML = o[1];
      }
  </script>
Avatar billede dr_chaos Nybegynder
24. februar 2006 - 11:14 #8
div med gridview:

<div id="RepGridDiv">
                <asp:Table ID="tblRepbedommelsegridView" runat="server">
                <asp:TableRow>
                <asp:TableCell>
                <b>Liste over udførte reperationsbedømmelser:</b>
                <!--gridview som viser de reparationsbedømmelser som der er foretaget i en kontrol-->
                <asp:GridView ID="RepbedommelsegridView"  OnRowCreated="RepbedommelsegridView_RowCreated"  AutoGenerateColumns="false" runat="server" DataKeyNames="RepBedommelseID,RepTraeNiveau3ID, FejlTekst" DataSourceID="ObjectDataRepBedommelser">
      <Columns>
      <asp:BoundField DataField="RepBedommelseID" Visible="false" HeaderStyle-BackColor="#D4DBE2"  />
      <asp:BoundField DataField="RepTraeNiveau3ID" Visible="false" HeaderStyle-BackColor="#D4DBE2" />
      <asp:BoundField DataField="FejlTekst" Visible="false" HeaderStyle-BackColor="#D4DBE2" />
      <asp:BoundField  DataField="Titel" HeaderText="Titel" HeaderStyle-BackColor="#D4DBE2"  />
      <asp:BoundField DataField="FejlKodeTekst" HeaderText="Bedømmelse" HeaderStyle-BackColor="#D4DBE2" />
      <asp:TemplateField>
      <HeaderStyle BackColor="#D4DBE2"/>
      <HeaderTemplate>Vis</HeaderTemplate>
      <ItemStyle CssClass="smallbutton" />
      <ItemTemplate>
     
      <input type="button"  runat="server" value="Vis" id="Vis" class="smallbutton" />
      </ItemTemplate>
      </asp:TemplateField>
      <asp:TemplateField>
      <HeaderStyle BackColor="#D4DBE2"/>
      <HeaderTemplate>Slet</HeaderTemplate>
      <ItemStyle CssClass="smallbutton" />
      <ItemTemplate>
     
      <input type="button"  runat="server" value="Slet" id="Slet" class="smallbutton" />
      </ItemTemplate>
      </asp:TemplateField>
      </Columns>
     
      </asp:GridView>
      <!--objectdatasource som indeholder kontroller-->
                <asp:ObjectDataSource ID="ObjectDataRepBedommelser" DeleteMethod="SletRepBedommelsePunkt" runat="server" SelectMethod="HentRepBedommelseInfo"
          TypeName="RepBedommelse">
          </asp:ObjectDataSource>
                </asp:TableCell>
                </asp:TableRow>
                </asp:Table>
                </div>
Avatar billede dr_chaos Nybegynder
24. februar 2006 - 11:16 #9
i codebehind har jeg:

//tilføj delimiter til callbackstring
            CallBackString += "€¤¤€¤¤€¤¤€¤¤€";
            //opret ny htmltextwriter
            HtmlTextWriter htw = new HtmlTextWriter(sw);
            //render gridview
            RepbedommelsegridView.RenderControl(htw);
            //tilføj output til callbackstring
            CallBackString += sw.ToString();
            //luk htmltextwriter
            htw.Flush();
Avatar billede dr_chaos Nybegynder
24. februar 2006 - 11:18 #10
Nu er det selvfølgelig bare noget jeg har lavet.
Men det kan sagtens tilpasses til dit behov.
Avatar billede chw Nybegynder
03. februar 2007 - 18:05 #11
lig et svar
Avatar billede dr_chaos Nybegynder
03. februar 2007 - 23:23 #12
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Ringkjøbing Landbobank – Nordjyske Bank

Forretningsudvikler til procesoptimering

Politiets Efterretningstjeneste

AI/ML udvikler i PET

Capgemini Danmark A/S

SAP S/4HANA Business Controlling