Avatar billede sbjerre Nybegynder
26. september 2002 - 13:18 Der er 2 kommentarer og
1 løsning

En kolonne i et datagrid som hyperlink ?

Jeg har et datagrid der fyldes med data fra et SQL udtræk fra en SQL server.
Jeg vil nu gerne have lavet en ny kolonne som skal virke som et hyperlink, hvor et ID nummer kan placeres fra dataset'et så det kan virke som et link til en ekstern side (der skal vise detaljer)

Koden ser pt. ud som følger...

****************************************************

private void Update_DataGrid(String strSQL)
{
OleDbConnection Conn = new OleDbConnection("Provider=SQLOLEDB;Data Source=localhost;uid=dbtest;Initial Catalog=booking");
OleDbCommand myCommandReservationer = new OleDbCommand(strSQL, Conn);
OleDbDataAdapter myDataAdapterReservationer = new OleDbDataAdapter(myCommandReservationer);

Conn.Open();

// Bind data from tblModer til DataGrid
DataSet myDataSetReservationer = new DataSet();
myDataAdapterReservationer.Fill(myDataSetReservationer, "tblModer");
DataGrid.DataSource = myDataSetReservationer.Tables["tblModer"].DefaultView;
DataGrid.DataBind();

Conn.Close();
}

***********************************************

Som det ses bruger jeg metoden DefaultView, til at få vist dataene i DataGrid'et.
Nu skal jeg på en eller anden måde have lavet en ekstra kolonne, der skal være den forreste (længst til venstre). Denne kolonne skal indeholde en URL til en ekstern side der viser detaljerne for den givne række i DataGrid'et

Hvem ved hvordan dette gøres ?
Jeg er åben for alle forslag....

Vh Søren
Avatar billede askhoej Praktikant
26. september 2002 - 13:45 #1
Her er et eksempel der åbner et popup-vindue:

<head>
<script language="javascript" type="text/javascript">
var win=null;
function NewWindow(mypage,myname,w,h,scroll,pos){
if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;}
else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20}
settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no';
win=window.open(mypage,myname,settings);}
</script>
</head>

<form runat="server">
<ASP:DataGrid Runat="server">
<Columns>
<asp:TemplateColumn ItemStyle-Width="5%" ItemStyle-Font-Size="xx-small">
  <ItemTemplate>
  <a href="din_side.aspx?id=<%# DataBinder.Eval(Container.DataItem, "id").ToString()%>" onclick="NewWindow(this.href,'emne','600','500','no','center');return false" onfocus="this.blur()">Vis</a>
  </ItemTemplate>
</asp:TemplateColumn>
</Columns>
</ASP:DataGrid>
</form>

/askhoej
Avatar billede sbjerre Nybegynder
26. september 2002 - 22:22 #2
så fik jeg det langt om længe til at virke...
Pointene er dine... og tak for hjælpen !
Avatar billede askhoej Praktikant
26. september 2002 - 22:24 #3
Det var så lidt og skulel det være en anden gang :-)

/askhoej
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