---
title: "User Control, ändra bild i page load"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/76426-user-control-ändra-bild-i-page-load"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "erka"
published: "2003-05-09T11:56:14.000Z"
updated: "2003-05-09T14:02:39.000Z"
replies: 12
views: 372
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/76426-user-control-ändra-bild-i-page-load"
---

# User Control, ändra bild i page load

## #1 — erka, 2003-05-09T11:56Z

Hej!

Jag har en User Control som består av fyra hyperlink kontroller med en ImageUrl tagg i varje. Min user control ska importeras på dvs olika sidor och beroende på vilken av dessa sidor är så ska jag skicka in en parameter till den som talar om att en viss bild ska ändras och inte vara den bild som är som default.

Tex
Första hyperlink kontrollen heter HprLnkStart, den har ett default värde för ImageUrl och det är "Mnu_Start_Of.giff", men på Start.aspx vill jag i page load sätta ut kontrollen på sidan samt att HprLnkStart kontrollen ska ha ImageUrl = "Mnu_Start_On.gif"

Jag har kollat på asp.net men blir inte klok på dess toturials. Någon som kan ge en knuff i rätt riktigt, vb.net ;) Antar att jag ska pyssla med propertys

Tacksam

Permalänk: https://www.webforum.nu/p/76426

## #2 — andreas_lindh, 2003-05-09T12:06Z

Så här gör jag. 

där du inkluderar usercontrolen

```
<uc:meny runat="server" highlightedpic="start" id="Meny"/>
```

i usercontrolen
Bilden

```
<asp:imagebutton borderwidth="0" causesvalidation="False" onclick="start_click" id="Start" runat="server" imageurl="grafik/meny_01.gif" alternatetext="Till startsidan" />
```

codenehind för usercontrolen

```
Public Property highlightedpic() As String
        Get
            _highlightedpic = _highlightedpic
        End Get
        Set(ByVal Value As String)
            _highlightedpic = Value
        End Set
    End Property

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If _highlightedpic = "start" Then
            start.ImageUrl = "grafik/meny1_01.gif"
            start.Enabled = False
        end if
end sub

och suben för att redirecta från länken
Public Sub start_click(ByVal sender As Object, ByVal e As ImageClickEventArgs)
        Response.Redirect("default.aspx")
    End Sub
```

Permalänk: https://www.webforum.nu/p/1041634

## #3 — NETwork, 2003-05-09T12:10Z

I din user control kan du lägga till en (eller flera) accessors. Sedan skickar du in värden från din sida där den är inkluderad som du sedan tar emot och använder i din UC.

```
//i din uc:
private string navUrl="";
public string NavUrl{
  set{
    navUrl = value;
  }
}

//I koden på sidan:
protected namespace.class myUC;
myUC.NavURL = string;
```

Permalänk: https://www.webforum.nu/p/1041638

## #4 — Dino, 2003-05-09T12:11Z

Annan metod:

```
' I userControl, page_load
If InStr(1, Request.FilePath, "category", CompareMethod.Text) Then
   HprLnkStart.ImageUrl = "category_image.gif"
End If
```

Permalänk: https://www.webforum.nu/p/1041640

## #5 — erka, 2003-05-09T12:21Z

Tack,sak rota i det lite mer nu, 

Dino vad exakt gör
InStr(1, Request.FilePath, "category", CompareMethod.Text)

Andreas

```
Public Property highlightedpic() As String
        Get
            _highlightedpic = _highlightedpic
        End Get
        Set(ByVal Value As String)
            _highlightedpic = Value
        End Set
    End Property
```

Jag hajjar inte varför du skriver \_highlightedpic ?

Permalänk: https://www.webforum.nu/p/1041650

## #6 — Dino, 2003-05-09T12:31Z

Den kollar om "category" finns i filnamnet.

Permalänk: https://www.webforum.nu/p/1041669

## #7 — NETwork, 2003-05-09T12:49Z

> **erka skrev:**
>
> ```
> Public Property highlightedpic() As String
>         Get
>             _highlightedpic = _highlightedpic
>         End Get
>         Set(ByVal Value As String)
>             _highlightedpic = Value
>         End Set
>     End Property
> ```
>
> 
> 
> Jag hajjar inte varför du skriver \_highlightedpic ?

\_highlightedpic är nog en privat variabel som han sätter med den publika variabeln highlightedpic  (det är nämligen \_aldrig\_ bra att använda den publika variabeln direkt)

Däremot finns det nog ett fel i koden ovan (om inte vb är väldigt annorlunda än c#???) och det är att om du ska kunna använda get så måste du ju returnera något där (annars får du ju inte tag på nåt :) ), alltså:

```
        Get
            return _highlightedpic
        End Get
```

Permalänk: https://www.webforum.nu/p/1041688

## #8 — andreas_lindh, 2003-05-09T12:57Z

Jag missade

```
Private _highlightedpic As String = ""
```

innan
Public property......

Den koden som jag visade fungerar som den ska

Permalänk: https://www.webforum.nu/p/1041700

## #9 — NETwork, 2003-05-09T13:05Z

:q Nyfiken bara, men man skriver alltså så här i vb?

```
Get
  variabel = variabel
End Get
```

Känns inte det minsta logiskt, men vb är ju som det är. ;)

Permalänk: https://www.webforum.nu/p/1041718

## #10 — andreas_lindh, 2003-05-09T13:14Z

Så har dom gjort i boken jag har

Permalänk: https://www.webforum.nu/p/1041730

## #11 — Dino, 2003-05-09T13:15Z

Nä, vi har return oxå.

Permalänk: https://www.webforum.nu/p/1041733

## #12 — erka, 2003-05-09T13:37Z

Jag skrev den så här

```
Private ActiveHighLightedPic as String

Public Property highlightedpic() as String  
  Get
    Return highlightedpic
  End Get
  Set(ByVal Value As String)
    ActiveHighLightedPic = Value
  End Set
End Property
```

Permalänk: https://www.webforum.nu/p/1041754

## #13 — Dino, 2003-05-09T14:02Z

Redigering

```
Private _ActiveHighLightedPic as String

Public Property highlightedpic() as String  
  Get
    Return _ActiveHighLightedPic
  End Get
  Set(ByVal Value As String)
    _ActiveHighLightedPic = Value
  End Set
End Property
```

Permalänk: https://www.webforum.nu/p/1041787

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/76426-user-control-ändra-bild-i-page-load
