Avatar billede want2learn Nybegynder
11. april 2006 - 08:54 Der er 8 kommentarer og
2 løsninger

2 spm. omkring ASP.NET fra hoften.

1.
<asp: datagrid>
..
..
<itemstyle />
<alternatingitemstyle />
</asp:datagrid>

Er det kan muligt med dette at lave samme opsætning men forskellige baggrunds farver eller vil man i dette kunne opsætte sin egen opstilling og så bruge det til farve opsætningen !?

2.
Hvis ikke (altså 1) er det så dette jeg skal bruge:
DataBinder.Eval(Container.DataItem, "navn") !?
og hvordan ved den hvis jeg har 4 udstræk af forskellige "navn" at den skal Mowenext som en gl. asp !? samt kan jeg lave en
<itemstyle />
<alternatingitemstyle />
farve opstilling på dette eller skal jeg bruge
n = 0
While read > 0
..
..
n = n + 1
     
Select Case n
Case 1 : bgColor = Color1
Case 2 : bgColor = Color2
Case Else : bgColor = "#EAEEF2"
End Select
!?

kan DataBinder.Eval(Container.DataItem, evt. forkortes eller kan jeg sige
objDB = DataBinder.Eval(Container.DataItem, og så bruge
objDB & "navn") !?
Avatar billede dr_chaos Nybegynder
11. april 2006 - 09:11 #1
Du kan lave det i row created der kan du f.eks. sætte en style på en row
Avatar billede snepnet Nybegynder
11. april 2006 - 11:31 #2
sådan lidt eksempler omkring det:

hvis du har dette datagrid:

<asp:DataGrid ID="grid" runat="server" AutoGenerateColumns="false" OnItemDataBound="grid_ItemDataBound">
    <Columns>
    <asp:BoundColumn DataField="Number">
    </asp:BoundColumn>
    <asp:BoundColumn DataField="Text">
    </asp:BoundColumn>
    </Columns>
</asp:DataGrid>

kan du give det lidt data sådan her:
protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        grid.DataSource = DAL.GetData(10);
        grid.DataBind();
    }
}

hvor dit DAL så kunne se sådan her ud (det er blot for eksemplets skyld):

public class DAL
{
    public static IList Get10Data(int rows)
    {
        IList liste = new ArrayList();
        for (int i = 0; i < rows; i++)
        {
            liste.Add(new Data("TEXT_" + i.ToString(), i));
        }
        return liste;
    }
}

public class Data
{
    private string m_Text;

    public string Text
    {
        get { return m_Text; }
        set { m_Text = value; }
    }

    private int m_Number;

    public int Number
    {
        get { return m_Number; }
        set { m_Number = value; }
    }

    public Data() : this("TEXT", 100)
    {
    }

    public Data(string text, int number)
    {
        m_Text = text;
        m_Number = number;
    }
}

hvis du bruger noget som ovenstående - kan du lave en handler af databound-eventet på griddet, som følger:

protected void grid_ItemDataBound(object sender, DataGridItemEventArgs e)
{
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        Data data = e.Item.DataItem as Data;
        if (data.Number % 2 == 0)
        {
            e.Item.BackColor = Color.PowderBlue;
        }
    }
}

du kan der få fat i den underliggende datakilde, og udfra indholdet i den, gøre noget ved griddet.

mht. til databindingssyntaksen, så kan du benytte en meget kortere, hvis du bruger version 2.0 (hvilket jeg synes du burde gøre, hvis det er dig muligt).... syntaksen er der:
Eval("navn")

mvh
Avatar billede want2learn Nybegynder
11. april 2006 - 14:32 #3
Snepnet

mange tak for eks. men det du er kommet med er det kun til C eller kan det bruges til VB !?

hvis ikke vil du evt komme med et eks. til VB da jeg er van' til det fra asp.3.0.

Og ja min udbyder har per. 12/3 opdateret til ASP.NET 2.0.
og vil du uddybe det med Dategrid mulighederne eller er der et site som w3schools der beskriver dette ligeså godt !?
Avatar billede dr_chaos Nybegynder
11. april 2006 - 14:40 #4
www.asp.net under tutorials har ret gode oplysninger om gridview som er det der erstatter datagrid i asp.net 2.0.

Det vil jeg anbefale dig at bruge og jeg ved at snepnet vil være enig.
Avatar billede snepnet Nybegynder
11. april 2006 - 15:01 #5
ja - det er et c# eksempel... du kan oversætte her:
http://www.developerfusion.co.uk/utilities/convertcsharptovb.aspx
og jeg er bestemt enig - brug 2.0 og kyl datagrid'et over højre skulder.
mvh
Avatar billede want2learn Nybegynder
11. april 2006 - 17:22 #6
jeg kan kun sige 1000 tak idet at det vil være dumt kan jeg se at køre datagrid men hvordan kan man vide det når man ikke viste det.
og tak for den gode converter den tror jeg at jeg vil bruge da jeg er bedre til IF, ELSEIF, ELSE, END IF. osv osv. end {C#} så VB er nok mest min fortrukne code stil.

vil du lægge et svt SNEPNET og DR. CHAOS.
Avatar billede want2learn Nybegynder
11. april 2006 - 19:46 #7
lige en sidste ting som jeg har kigget meget efter...

access database tilslutning...

hvis man har en db i access der hedder test.mdb som ligger d:\domæne.dk\public\database\  og ens side ligger i en mappe udenfor database mappen men i samme mappe som public.

hvordan vil ens database connection så se ud !? og hvorfor !?
Avatar billede snepnet Nybegynder
11. april 2006 - 20:13 #8
www.connectionstrings.com er altid god.
din sti kan bare være den fysiske sti til databasen, hvis du ikke vil manipulere med det i koden.
mvh
Avatar billede dr_chaos Nybegynder
12. april 2006 - 18:27 #9
Svar :)
Avatar billede snepnet Nybegynder
14. april 2006 - 20:04 #10
og et svar til :o)
mvh
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