Avatar billede haz Nybegynder
02. maj 2007 - 01:47 Der er 12 kommentarer og
1 løsning

ændre data inden udskrift i gridview

jeg har en database som indeholder 2 felter 1 som fortæller om det er en singlebruger defineret som 1 eller 0 og en anden der indeholder antallet af brugere hvis det ikke er en singlebruger
(0 ved singlebruger) jeg kan ikke ændre i db pga anden kode.

jeg skriver nu dataene ud i en dataview dvs der kommer til at stå
    single| antal
        0  |  4
        1  |  0     

men jeg ville gerne have der stod
    single| antal
          |  4
        *  |  1   
 
eller lign.

nogen ideer derude ?
Avatar billede dr_chaos Nybegynder
02. maj 2007 - 08:35 #1
Jeg er lidt forvirret over hvad du mener.
De 1 tal du viser i eksempel 2 hvad symboliserer det ?
Avatar billede dr_chaos Nybegynder
02. maj 2007 - 08:35 #2
Hvordan udskriver du tallene i dit gridview?
Avatar billede haz Nybegynder
02. maj 2007 - 15:50 #3
jeg udskriver dem bare ved at fylde dataene i en adapter og binder dem til gridden

det jeg gerne ville ændre på er at hvis der under antal står 0 betyder det at der er 1 bruger så det skulle den jo gerne vise !
Avatar billede neoman Novice
02. maj 2007 - 16:11 #4
Du kan lave dig en handler: for DataBound eventet, hvor du så kan løbe hele kollektionen igennem og rette det du ønsker, eller RowDataBound, som bliver kaldt hver gang en række har fået data - derinde kan du så få fat i data og modificere dem efter ønske.
Avatar billede dr_chaos Nybegynder
02. maj 2007 - 19:24 #5
Der er en mere simpel måde hvis du bruger itemtemplates med dit gridview.
asp:GridView ID="grdProductAddOn" DataKeyNames="ProductUniqueID"
             
                AutoGenerateColumns="true" ShowFooter="false">
                <Columns>
<asp:TemplateField HeaderText="Product">
                        <ItemTemplate>
                            <asp:Label ID="lblProductName" runat="server" Text='<%# ModificerData(Eval("Productname").ToString()) %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
  </Columns>
            </asp:GridView>
Avatar billede dr_chaos Nybegynder
02. maj 2007 - 19:25 #6
Så laver du en funktion i din codebehind:
protected string ModificerData(string str)
{
  return str+"Det virker";
}
Avatar billede haz Nybegynder
04. maj 2007 - 01:47 #7
jeg har arbejdet med din løsning dr_chaos    men min version opretter en ekstra coloumn med de ændrede data

<asp:GridView ID="GridView1" runat="server"  BorderWidth="1px" CellPadding="3" DataKeyNames="antal_loeb" AutoGenerateColumns="true" ShowFooter="false">
<Columns>
<asp:TemplateField HeaderText="antal_loeb">
                        <ItemTemplate>
                            <asp:Label ID="antal_loeb" runat="server" Text='<%# ModificerData(Eval("antal_loeb").ToString()) %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
</Columns>
</asp:GridView>

og codebehind
protected string ModificerData(string str)
        {
            if (str == "0")
                str = "1";
            return str;
        }
Avatar billede dr_chaos Nybegynder
04. maj 2007 - 17:01 #8
AutoGenerateColumns="true" skal være:
AutoGenerateColumns="false"
Avatar billede haz Nybegynder
05. maj 2007 - 05:33 #9
ja så kommer det redigerede tal frem ,men hvis man har andre data der vises i samme grid forsvinder de.
Avatar billede dr_chaos Nybegynder
05. maj 2007 - 07:07 #10
Så indsætter du boundcolumns:
<Columns>
<asp:BoundColumn DataField="DitFeltNavn1" HeaderText="Test" />
<asp:BoundColumn DataField="DitFeltNavn2" HeaderText="Test" />
<asp:TemplateField HeaderText="antal_loeb">
Avatar billede dr_chaos Nybegynder
05. maj 2007 - 07:09 #11
DataField indeholder f.eks. kollonne navn fra en database eller et property fra en klasse.
Avatar billede haz Nybegynder
06. maj 2007 - 00:55 #12
nice
svar og få dine point
Avatar billede dr_chaos Nybegynder
06. maj 2007 - 08:15 #13
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