Avatar billede -xyz- Nybegynder
11. februar 2006 - 12:38 Der er 6 kommentarer og
1 løsning

Brug af Repeater

Hej jeg har nedenstående kode som ikke virker:
<%
try
                {
                   
                    if (!System.IO.File.Exists(Server.MapPath(@"img/thumbs/" + ((Film)System.Web.UI.WebControls.Container.DataItem).billede.Substring(4))))
                    {
                        if (System.IO.File.Exists(Server.MapPath(((Film)System.Web.UI.WebControls.Container.DataItem).billede)))
                        {
                            using (System.Drawing.Image image = System.Drawing.Image.FromFile(Server.MapPath(((Film)System.ComponentModel.Container.DataItem).billede)))
                            {
                                System.Drawing.Image thumbImage = image.GetThumbnailImage(75, 105, null, IntPtr.Zero);
                                thumbImage.Save(Server.MapPath(@"img/thumbs/" + ((Film)System.Web.UI.WebControls.Container.DataItem).billede.Substring(4)), System.Drawing.Imaging.ImageFormat.Jpeg);
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    Response.Write(ex.ToString());
                }
%>
Det der sker er at når jeg vil lave noget lidt mere avanceret end at bare hente mine data ind i formen(ASP.NET 2.0) så kan jeg ikke længere bruge <%# Container.DataItem %> og når jeg ikke bruger <%# får jeg fejlen: The name 'Container' does not exist in the current context, er der nogen der umiddelbart har en løsning på mit problem, og eventuelt kan forklare hvad <%# gør? jeg er endnu ikke helt hjemme i ASP.
Avatar billede -xyz- Nybegynder
11. februar 2006 - 12:39 #1
Koden skulle se sådan her ud:

  <%
                try
                {
                   
                    if (!System.IO.File.Exists(Server.MapPath(@"img/thumbs/" + ((Film)Container.DataItem).billede.Substring(4))))
                    {
                        if (System.IO.File.Exists(Server.MapPath(((Film)Container.DataItem).billede)))
                        {
                            using (System.Drawing.Image image = System.Drawing.Image.FromFile(Server.MapPath(((Film)Container.DataItem).billede)))
                            {
                                System.Drawing.Image thumbImage = image.GetThumbnailImage(75, 105, null, IntPtr.Zero);
                                thumbImage.Save(Server.MapPath(@"img/thumbs/" + ((Film)Container.DataItem).billede.Substring(4)), System.Drawing.Imaging.ImageFormat.Jpeg);
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    Response.Write(ex.ToString());
                }
            %>
Avatar billede dr_chaos Nybegynder
11. februar 2006 - 13:17 #2
skal det vises i en repeater ?
Man bruger ikke container.dataitem længere.
Avatar billede -xyz- Nybegynder
11. februar 2006 - 15:08 #3
Ja, det skal det, hvad bruger man så?
Avatar billede -xyz- Nybegynder
11. februar 2006 - 15:09 #4
Eller det skal ikke vises, men køres for hvert item der bliver vist
Avatar billede dr_chaos Nybegynder
11. februar 2006 - 15:15 #5
drejer det sig om en repeater med billeder ?
Avatar billede -xyz- Nybegynder
13. februar 2006 - 11:26 #6
Jeg har fundet løsningen, jeg lader skalerings funktionen ligge i "CodeBehind" og ordner det derfra, i stedet for at prøve at flytte det over på markup siden
Avatar billede -xyz- Nybegynder
13. februar 2006 - 11:27 #7
Lukker
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