---
title: "sätta en label i en datagrid"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/88526-sätta-en-label-i-en-datagrid"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "hopparn"
published: "2003-10-15T09:25:28.000Z"
updated: "2003-10-15T17:17:45.000Z"
replies: 5
views: 318
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/88526-sätta-en-label-i-en-datagrid"
---

# sätta en label i en datagrid

## #1 — hopparn, 2003-10-15T09:25Z

hej
Jag försöker sätta visible true/false på en label som ligger som första raden i en datagrid (template - i itemraderna) men får felmeddelande att den inte existerar ännu , antagligen finns den inte innan griden är utritad, men hur skall jag då göra... Vilken är postningsordningen, för jag antar att det är där jag måste sätta den?

kod som inte funkar: 

```
		private void PresentDetailsInGrid(mresearchExtendedDS ds, string mResearchID)
		{
			
			DataView dv = ds.View_M_Research.DefaultView;
			dv.RowFilter="M_R_ID = "+mResearchID;
			dgShowRdetails.DataSource = dv;
			dgShowRdetails.DataBind();
			
			if ((bool)Session["Admin"] == true)
			{	
				lblAdmin.Visible=true;			
			}
			else
			{
				lblAdmin.Visible=false;
			}
		}
```

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

## #2 — NETwork, 2003-10-15T09:53Z

Eftersom du har din label i en annan kontroll (datagrid) så kan du inte rakt av hitta den på sidan. Du får göra en findcontrol på din datagrid och på så sätt hitta din kontroll:

```
((Label)dgShowRdetails.Items[0].FindControl("id").Visible = true|false;
```

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

## #3 — hopparn, 2003-10-15T10:52Z

tusen tack... borde vetat det där, nu funkar det som det skall

har en kort fråga till (verkar stå helt still i dag)
har en sida med en webcontrol (en meny), som visar 3 lable:ar, 1 då du icke är inloggad och 2 då du är inloggad

lablearna sätts baserat på sessioner

jag måste refresha då jag loggat in, för att få se de rätta länkarna, hur kan jag ta mig runt det ( skall jag ladda om ascxfilen och i sf hur?)

bästa h
Hoppis - som är lite trött idag

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

## #4 — NETwork, 2003-10-15T11:56Z

Om du har en session så finns den ju även i din usercontrol, gör en koll där.

Ett litet tips med tanke på din kod, att skriva:

```
if ((bool)Session["Admin"] == true)
```

är samma sak som att skriva: 

```
if (true == true)
```

Det räcker att skriva:

```
if ((bool)Session["Admin"])
```

Men för att göra det ännu lite snyggare kan du byta ut detta:

```
if ((bool)Session["Admin"] == true)
{	
  lblAdmin.Visible=true;			
}
else
{
  lblAdmin.Visible=false;
}
```

mot en rad kod:

```
lblAdmin.Visible = (bool)Session["Admin"];
```

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

## #5 — hopparn, 2003-10-15T14:22Z

snyggt =)
beträffande userc. så gjorde jag en fuling, jag refreshar sidan en gång efter login, det är inte snyggt, jag vet... men det funkar och applikationen skall vara uppe imorgon =)

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

## #6 — Gladh, 2003-10-15T17:17Z

> lblAdmin.Visible = (bool)Session\["Admin"\];

Now we talking. :)

Din post borde vara på förstasidan så folk kan se skillnad på bra/dåligt skriven kod.

Koden gör samma sak, men den sistakoden är säkert 4 operationer kortare och alltså betydligt snabbare. Har inte orkat kolla MSIL koden, men det hade varit riktigt intressant och se hur många operationer som man spara på att koda som man skall.

\- M

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/88526-sätta-en-label-i-en-datagrid
