Avatar billede dm0108 Nybegynder
21. april 2004 - 13:48 Der er 41 kommentarer og
1 løsning

trække indholdet ud af et felt i en datagrid

Jeg skal trække indholdet ud af et felt i en datagrid i en webform. Så jeg kan lave en forespørgsel på det felt.
Hvordan gør man det??
Avatar billede burningice Nybegynder
22. april 2004 - 10:54 #1
ditDG.Items.Item(index).Cells(cellIndex)
Avatar billede dm0108 Nybegynder
22. april 2004 - 11:04 #2
jeg går ud fra at man så uden de store problemer kan sætte det lig med en variabel.
Avatar billede burningice Nybegynder
22. april 2004 - 11:08 #3
Dim txt As String = ditDG.Items.Item(index).Cells(cellIndex).Text
Avatar billede dm0108 Nybegynder
22. april 2004 - 11:08 #4
aktivitetid = MyDataGrid1.Items.Item(0).Cells(0)
Avatar billede dm0108 Nybegynder
22. april 2004 - 11:09 #5
aktivitetid er en integer
Avatar billede dm0108 Nybegynder
22. april 2004 - 11:09 #6
skal det være en string
Avatar billede dm0108 Nybegynder
22. april 2004 - 11:15 #7
det virker bortset fra at det kun er den øverste som den finder
Avatar billede burningice Nybegynder
22. april 2004 - 11:16 #8
hvis du gør ovenstående, så skal AktiviteTid være af type TableCell
Avatar billede burningice Nybegynder
22. april 2004 - 11:16 #9
ja... du har jo skrevet at det skal være den første id (0) og den første celle (0)
Avatar billede dm0108 Nybegynder
22. april 2004 - 11:19 #10
den skulle jo helst kunne tage et virkårlig felt lige som den standard metode man bruger med windows forme
blabla =DataGrid1.Item(DataGrid1.CurrentRowIndex, 0)
Avatar billede burningice Nybegynder
22. april 2004 - 11:23 #11
du må jo fortælle lidt mere om din opsætning.. jeg sagde jo at jeg skulle mere info for at finde frem til det rigtige index
Avatar billede dm0108 Nybegynder
22. april 2004 - 11:33 #12
Her har du koden
så håber jeg det er info nok
som du kan se uddrager jeg celle indholdet i en label midlertidigt for at se om indholdet er det rigtige

Imports System
Imports System.Data
Imports System.Data.OleDb

Public Class Aktiviteter
    Inherits System.Web.UI.Page

#Region " Web Form Designer Generated Code "

    'This call is required by the Web Form Designer.
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

    End Sub
    Protected WithEvents Button1 As System.Web.UI.WebControls.Button
    Protected WithEvents MyDataGrid1 As System.Web.UI.WebControls.DataGrid
    Protected WithEvents Button2 As System.Web.UI.WebControls.Button
    Protected WithEvents Label10 As System.Web.UI.WebControls.Label
    Protected WithEvents Label9 As System.Web.UI.WebControls.Label
    Protected WithEvents Label8 As System.Web.UI.WebControls.Label
    Protected WithEvents Label7 As System.Web.UI.WebControls.Label
    Protected WithEvents TextBox7 As System.Web.UI.WebControls.TextBox
    Protected WithEvents Label6 As System.Web.UI.WebControls.Label
    Protected WithEvents Label5 As System.Web.UI.WebControls.Label
    Protected WithEvents Label3 As System.Web.UI.WebControls.Label
    Protected WithEvents Label2 As System.Web.UI.WebControls.Label
    Protected WithEvents Label1 As System.Web.UI.WebControls.Label
    Protected WithEvents TextBox2 As System.Web.UI.WebControls.TextBox
    Protected WithEvents TextBox3 As System.Web.UI.WebControls.TextBox
    Protected WithEvents TextBox4 As System.Web.UI.WebControls.TextBox
    Protected WithEvents TextBox5 As System.Web.UI.WebControls.TextBox
    Protected WithEvents Label4 As System.Web.UI.WebControls.Label
    Protected WithEvents TextBox6 As System.Web.UI.WebControls.TextBox
    Protected WithEvents TextBox8 As System.Web.UI.WebControls.TextBox
    Protected WithEvents TextBox9 As System.Web.UI.WebControls.TextBox
    Protected WithEvents DropDownList1 As System.Web.UI.WebControls.DropDownList
    Protected WithEvents Label11 As System.Web.UI.WebControls.Label

    'NOTE: The following placeholder declaration is required by the Web Form Designer.
    'Do not delete or move it.
    Private designerPlaceholderDeclaration As System.Object

    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
        'CODEGEN: This method call is required by the Web Form Designer
        'Do not modify it using the code editor.
        InitializeComponent()
    End Sub

#End Region
    Dim forbindelse As OleDbConnection
 
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        forbindelse = New OleDbConnection("Provider=SQLOLEDB.1;Password=YYYYY;Persist Security Info=True;User ID=XXXX;Initial Catalog=NMOverblik;Data Source=TEST-PC55P520W0")
        Dim adapter As New OleDbDataAdapter("select AktivitetId,AktivitetKode,KortNavn,Beskrivelse from aktivitet order by aktivitetkode", forbindelse)
        Dim resultat As New DataSet
        adapter.Fill(resultat, "aktivitet")
        MyDataGrid1.DataSource = resultat.Tables("aktivitet").DefaultView
        MyDataGrid1.DataBind()
        Label1.Visible = False
        Label2.Visible = False
        Label3.Visible = False
        Label4.Visible = False
        Label5.Visible = False
        Label6.Visible = False
        Label7.Visible = False
        Label8.Visible = False
        Label9.Visible = False
        Label10.Visible = False
        TextBox2.Visible = False
        TextBox3.Visible = False
        TextBox4.Visible = False
        TextBox5.Visible = False
        TextBox6.Visible = False
        TextBox7.Visible = False
        TextBox8.Visible = False
        TextBox9.Visible = False
        Button2.Visible = False
        DropDownList1.Visible = False

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim aktivitetid As String
        aktivitetid = MyDataGrid1.Items.Item(0).Cells(0).Text
        Label11.Text = aktivitetid
        MyDataGrid1.Visible = False
        Label1.Visible = True
        Label2.Visible = True
        Label3.Visible = True
        Label4.Visible = True
        Label5.Visible = True
        Label6.Visible = True
        Label7.Visible = True
        Label8.Visible = True
        Label9.Visible = True
        Label10.Visible = True
        TextBox2.Visible = True
        TextBox3.Visible = True
        TextBox4.Visible = True
        TextBox5.Visible = True
        TextBox6.Visible = True
        TextBox7.Visible = True
        TextBox8.Visible = True
        TextBox9.Visible = True
        Button2.Visible = True
        DropDownList1.Visible = True

    End Sub

 
End Class
Avatar billede burningice Nybegynder
22. april 2004 - 11:39 #13
ja, ok... det gav mig jo ikke meget at gå ud fra.. er det når man trykker på en knap at den tilhørende celle skal skrive ud
Avatar billede dm0108 Nybegynder
22. april 2004 - 11:45 #14
det er når man trykker på en knap at jeg skal kunne uddrage alle de data som denne celles indhold er primær nøgle for.
håber det giver mere
Avatar billede burningice Nybegynder
22. april 2004 - 12:07 #15
du skal have lavet en ItemCommand-eventhandler til din knap

Denne indeholder et DataGridCommandEventArgs-object som kan give dig en reference til det DataGridItem knappen blev trykket i:

e.Item.Cells(0).Text
Avatar billede dm0108 Nybegynder
22. april 2004 - 12:35 #16
så noget som det her
Private Sub DataGrid1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.ItemCommand
      ' If Not navigating to Next Page, show the CategoryID in the text box.
      If e.Item.ItemIndex > -1 Then
        ' Get the CategoryID of the Row Selected in the DataGrid.
        TextBox1.Text = DataGrid1.DataKeys(e.Item.ItemIndex)
      End If
  End Sub
Avatar billede burningice Nybegynder
22. april 2004 - 12:49 #17
hvis du skal have indholdet af en bestemt celle, så skal du bruge mit eksempel. Det eksempel du er kommet med henter værdien ud til den primære nøgle i den pågældende række
Avatar billede dm0108 Nybegynder
22. april 2004 - 12:59 #18
jeg er ikke helt med hvor jeg laver den eventhandler henne
Avatar billede dm0108 Nybegynder
22. april 2004 - 14:08 #19
Har du opgivet mig??
Avatar billede burningice Nybegynder
23. april 2004 - 12:30 #20
du skal skrive den ind her:

<asp:DataGrid id="ItemsGrid"
                BorderColor="black"
                BorderWidth="1"
                CellPadding="3"
                AutoGenerateColumns="false"
                OnItemCommand="DinMetode"
                runat="server">
Avatar billede dm0108 Nybegynder
23. april 2004 - 13:40 #21
<asp:datagrid id="MyDataGrid1" style="Z-INDEX: 101; LEFT: 185px; POSITION: absolute; TOP: 40px"
                runat="server" Height="128px" Width="577px" BackColor="InactiveCaptionText" BorderColor="LightGray"
                BorderStyle="Double">
                <SelectedItemStyle      BackColor="InactiveCaption"></SelectedItemStyle>
                <EditItemStyle BackColor="#E0E0E0"></EditItemStyle>
                OnItemCommand="findfeltet"

det giver følgende fejl
Konstantværdien ('OnItemCommand="findfeltet"') er ikke tilladt i en 'System.Web.UI.WebControls.DataGrid'.
Avatar billede burningice Nybegynder
23. april 2004 - 13:48 #22
nej nej nej... du skal gøre som det er skrevet, ikke finde på dine egne dikkedarer

OnItemCommand="findfeltet" skal stå i dit <asp:datagrid-tag
Avatar billede dm0108 Nybegynder
23. april 2004 - 13:58 #23
<asp:datagrid id="MyDataGrid1" style="Z-INDEX: 101; LEFT: 185px; POSITION: absolute; TOP: 40px"
                OniItemCommand="findfeltet"
                runat="server" Height="128px" Width="577px" BackColor="InactiveCaptionText" BorderColor="LightGray"
                BorderStyle="Double">

sådan her.
Avatar billede burningice Nybegynder
23. april 2004 - 16:05 #24
ja... så skal du bare have denne metode i din kode:

Private Sub findfeltet(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.ItemCommand
      ' If Not navigating to Next Page, show the CategoryID in the text box.
      If e.Item.ItemIndex > -1 Then
        ' Get the CategoryID of the Row Selected in the DataGrid.
        TextBox1.Text = DataGrid1.DataKeys(e.Item.ItemIndex)
      End If
  End Sub
Avatar billede dm0108 Nybegynder
26. april 2004 - 08:27 #25
Der kommer ikke noget tilbage fra findfeltet, der kommer ikke noget nummer ind i textboxen.
hvad kan der være galt
Avatar billede burningice Nybegynder
26. april 2004 - 08:34 #26
prøv at brug det her istedet

Private Sub findfeltet(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.ItemCommand
      ' If Not navigating to Next Page, show the CategoryID in the text box.
      If e.Item.ItemIndex > -1 Then
        ' Get the CategoryID of the Row Selected in the DataGrid.
        TextBox1.Text = e.Item.Cells(0).Text
      End If
  End Sub
Avatar billede dm0108 Nybegynder
26. april 2004 - 08:49 #27
den fylder stadigvæk ikke noget ind, her er den efterfølgende kode, måske kan du se fejlen

fejlmeddelsen
Der er ingen række på positionen 0.
fejlen vises første gang jeg prøver at trække noget ud af datasettet og lægge det i en tekstbox
hvis jeg indsætter et af de tal jeg ved eksistere i dataviewet så fungere den fint.


Public Sub findfeltet(ByVal source As System.Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles MyDataGrid1.ItemCommand
        If e.Item.ItemIndex > -1 Then
            aktivitetid = e.Item.Cells(0).Text
        End If
    End Sub


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'Dim data As Integer
        'data = aktivitetid

        Dim strsql As String = "select * from view_aktiviteter2004 where AktivitetId =" & aktivitetid
        Dim resultat As New DataSet
        'forbindelse = New OleDbConnection("Provider=SQLOLEDB.1;Password=YYY;Persist Security Info=True;User ID=XXX;Initial Catalog=NMOverblik;Data Source=TEST-PC55P520W0")
        Dim adapter As New OleDbDataAdapter(strsql, forbindelse)
        adapter.Fill(resultat, "view_aktiviteter2004")
        MyDataGrid1.Visible = False
        Button1.Visible = False
        Button3.Visible = False

        Label1.Visible = True
        Label2.Visible = True
        Label3.Visible = True
        Label4.Visible = True
        Label6.Visible = True
        Label7.Visible = True
        Label8.Visible = True
        Label10.Visible = True
        Label14.Visible = True
        Textbox1.Visible = True

        Dim ww As String = resultat.Tables(0).Rows(0).Item(0)
        If Not ww = "null" Then
            Textbox1.Text = ww
        Else
            Textbox1.Text = ""
        End If


        TextBox2.Visible = True
        Dim ss As String = resultat.Tables(0).Rows(0).Item(3)
        If Not ss = "null" Then
            TextBox2.Text = ss
        Else
            TextBox2.Text = ""
        End If

        TextBox3.Visible = True
        Dim bb As String = resultat.Tables(0).Rows(0).Item(7)
        If Not bb = "null" Then
            TextBox3.Text = bb
        Else
            TextBox3.Text = ""
        End If

        TextBox4.Visible = True
        Dim gg As String = resultat.Tables(0).Rows(0).Item(2)
        If Not gg = "null" Then
            TextBox4.Text = gg
        Else
            TextBox4.Text = ""
        End If

        TextBox6.Visible = True
        Dim yy As String = resultat.Tables(0).Rows(0).Item(4)
        If Not yy = "null" Then
            TextBox6.Text = yy
        Else
            TextBox6.Text = ""
        End If

        TextBox7.Visible = True
        Dim hh As String = resultat.Tables(0).Rows(0).Item(5)
        If Not hh = "null" Then
            TextBox7.Text = hh
        Else
            TextBox7.Text = ""
        End If

        TextBox8.Visible = True
        Dim pp As String = resultat.Tables(0).Rows(0).Item(6)
        If Not pp = "null" Then
            TextBox8.Text = pp
        Else
            TextBox8.Text = ""
        End If


        Textbox10.Visible = True
        Dim mm As String = resultat.Tables(0).Rows(0).Item(8)
        If Not mm = "null" Then
            Textbox10.Text = mm
        Else
            Textbox10.Text = ""
        End If

        Button2.Visible = True
        Button4.Visible = True
        TextBox5.Visible = True
        TextBox9.Visible = True
        TextBox11.Visible = True
        Label5.Visible = True
        Label9.Visible = True
        Label12.Visible = True
        DropDownList1.Visible = True
        fyldden()
Avatar billede burningice Nybegynder
26. april 2004 - 09:00 #28
jeg skal også bruge din kode fra aspx-siden
Avatar billede dm0108 Nybegynder
26. april 2004 - 09:08 #29
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="Aktiviteter.aspx.vb" Inherits="NMOverblik.Aktiviteter"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
    <HEAD>
        <title>WebForm2</title>
        <meta content="True" name="vs_snapToGrid">
        <meta content="True" name="vs_showGrid">
        <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
        <meta content="Visual Basic .NET 7.1" name="CODE_LANGUAGE">
        <meta content="JavaScript" name="vs_defaultClientScript">
        <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    </HEAD>
    <body bgProperties="fixed" ms_positioning="GridLayout">
        <form id="Form1" method="post" runat="server">
            <asp:datagrid id="MyDataGrid1" style="Z-INDEX: 101; LEFT: 185px; POSITION: absolute; TOP: 40px"
                OnItemCommand="findfeltet" runat="server" Height="128px" Width="577px" BackColor="InactiveCaptionText"
                BorderColor="LightGray" BorderStyle="Double">
                <SelectedItemStyle BackColor="InactiveCaption"></SelectedItemStyle>
                <EditItemStyle BackColor="#E0E0E0"></EditItemStyle>
            </asp:datagrid>
            <asp:button id="Button4" style="Z-INDEX: 129; LEFT: 472px; POSITION: absolute; TOP: 288px" runat="server"
                Height="32px" Width="144px" Text="Find Opfølgning" BackColor="#C0FFC0"></asp:button><asp:button id="Button3" style="Z-INDEX: 122; LEFT: 40px; POSITION: absolute; TOP: 72px" runat="server"
                Height="32px" Width="137px" Text="Tilbage til hovedmenu" BackColor="#FFE0C0"></asp:button><asp:textbox id="Textbox10" style="Z-INDEX: 121; LEFT: 216px; POSITION: absolute; TOP: 208px"
                runat="server" Height="36px" Width="240px"></asp:textbox><asp:textbox id="Textbox1" style="Z-INDEX: 119; LEFT: 216px; POSITION: absolute; TOP: 16px" runat="server"
                Height="36px" Width="240px"></asp:textbox><asp:textbox id="TextBox8" style="Z-INDEX: 114; LEFT: 216px; POSITION: absolute; TOP: 176px"
                runat="server" Height="36px" Width="240px"></asp:textbox><asp:textbox id="TextBox6" style="Z-INDEX: 111; LEFT: 216px; POSITION: absolute; TOP: 144px"
                runat="server" Height="36px" Width="240px"></asp:textbox><asp:label id="Label4" style="Z-INDEX: 110; LEFT: 64px; POSITION: absolute; TOP: 120px" runat="server"
                Height="24px" Width="96px">Aktivitet Type</asp:label><asp:textbox id="TextBox4" style="Z-INDEX: 107; LEFT: 216px; POSITION: absolute; TOP: 112px"
                runat="server" Height="36px" Width="240px"></asp:textbox><asp:textbox id="TextBox3" style="Z-INDEX: 106; LEFT: 216px; POSITION: absolute; TOP: 80px" runat="server"
                Height="36px" Width="240px"></asp:textbox><asp:textbox id="TextBox2" style="Z-INDEX: 105; LEFT: 216px; POSITION: absolute; TOP: 48px" runat="server"
                Height="36px" Width="240px"></asp:textbox><asp:dropdownlist id="DropDownList1" style="Z-INDEX: 103; LEFT: 224px; POSITION: absolute; TOP: 296px"
                runat="server" Height="88px" Width="184px"></asp:dropdownlist><asp:label id="Label1" style="Z-INDEX: 104; LEFT: 64px; POSITION: absolute; TOP: 24px" runat="server"
                Height="27px" Width="96px">Aktivitets ID</asp:label><asp:label id="Label2" style="Z-INDEX: 108; LEFT: 64px; POSITION: absolute; TOP: 56px" runat="server"
                Height="24px" Width="96px">Aktivitets Kode</asp:label><asp:label id="Label3" style="Z-INDEX: 109; LEFT: 64px; POSITION: absolute; TOP: 88px" runat="server"
                Height="24px" Width="96px">Afdelings Navn</asp:label><asp:label id="Label6" style="Z-INDEX: 112; LEFT: 64px; POSITION: absolute; TOP: 152px" runat="server"
                Height="24px" Width="104px">Kortnavn</asp:label><asp:textbox id="TextBox7" style="Z-INDEX: 113; LEFT: 480px; POSITION: absolute; TOP: 48px" runat="server"
                Height="196px" Width="336px" TextMode="MultiLine"></asp:textbox><asp:label id="Label7" style="Z-INDEX: 115; LEFT: 488px; POSITION: absolute; TOP: 24px" runat="server"
                Height="24px" Width="104px">Beskrivelse</asp:label><asp:label id="Label8" style="Z-INDEX: 116; LEFT: 64px; POSITION: absolute; TOP: 184px" runat="server"
                Height="24px" Width="96px">Budget Kroner</asp:label><asp:label id="Label10" style="Z-INDEX: 117; LEFT: 64px; POSITION: absolute; TOP: 296px" runat="server"
                Height="16px" Width="120px">Opfølgningskoder.</asp:label><asp:button id="Button2" style="Z-INDEX: 118; LEFT: 672px; POSITION: absolute; TOP: 288px" runat="server"
                Height="32px" Width="144px" Text="Gem Opfølgning" BackColor="#C0FFC0"></asp:button><asp:button id="Button1" style="Z-INDEX: 102; LEFT: 40px; POSITION: absolute; TOP: 40px" runat="server"
                Height="32px" Width="137px" Text="Rediger/se opfølgning" BackColor="#FFE0C0"></asp:button><asp:label id="Label14" style="Z-INDEX: 120; LEFT: 64px; POSITION: absolute; TOP: 216px" runat="server"
                Height="32px" Width="136px">Aktiv Budget Timer</asp:label><asp:textbox id="TextBox5" style="Z-INDEX: 123; LEFT: 224px; POSITION: absolute; TOP: 344px"
                runat="server" Height="246px" Width="352px" TextMode="MultiLine"></asp:textbox><asp:label id="Label5" style="Z-INDEX: 124; LEFT: 64px; POSITION: absolute; TOP: 360px" runat="server"
                Height="24px" Width="128px">Status Notat</asp:label><asp:label id="Label9" style="Z-INDEX: 125; LEFT: 64px; POSITION: absolute; TOP: 640px" runat="server"
                Height="24px" Width="120px">Prognose Kr</asp:label><asp:textbox id="TextBox9" style="Z-INDEX: 126; LEFT: 224px; POSITION: absolute; TOP: 632px"
                runat="server" Height="32px" Width="176px"></asp:textbox><asp:label id="Label12" style="Z-INDEX: 127; LEFT: 472px; POSITION: absolute; TOP: 640px" runat="server"
                Height="32px" Width="136px">Prognose Timer</asp:label><asp:textbox id="TextBox11" style="Z-INDEX: 128; LEFT: 648px; POSITION: absolute; TOP: 632px"
                runat="server" Height="32px" Width="152px"></asp:textbox>
            <asp:RadioButtonList id="RadioButtonList1" style="Z-INDEX: 130; LEFT: 624px; POSITION: absolute; TOP: 360px"
                runat="server" Height="200px" Width="329px">
                <asp:ListItem Value="1">Ikke Igang Sat</asp:ListItem>
                <asp:ListItem Value="2">F&#248;lger Tidsplanen</asp:ListItem>
                <asp:ListItem Value="3">Forsinket - Ingen konsekvens for tidsplanen</asp:ListItem>
                <asp:ListItem Value="4">Forsinket - med konsekvenser for tidsplanen</asp:ListItem>
                <asp:ListItem Value="5">Gennemf&#248;rt</asp:ListItem>
                <asp:ListItem Value="6">Uds&#230;ttes</asp:ListItem>
            </asp:RadioButtonList>
            <asp:TextBox id="TextBox12" style="Z-INDEX: 131; LEFT: 328px; POSITION: absolute; TOP: 256px"
                runat="server" Width="136px" Height="32px"></asp:TextBox></form>
    </body>
</HTML>
Avatar billede burningice Nybegynder
26. april 2004 - 09:12 #30
okay okay... hvad havde du forestillet dig her? Du opretter et datagrid, men du har jo ikke noget i det... ?

Ps. nogensinde overvejet at bruge et eksternt css-dokument.. det ser jo GYSELIGT ud !
Avatar billede dm0108 Nybegynder
26. april 2004 - 09:19 #31
Jeg har noget i mit datagrid
DU har bare ikke fået den sub med som fylder datagriden. Det er selvfølgelig min fejl
hvordan det serud er jeg lige nu rimelig ligeglad med.
hvis du forsat vil kigge på det kan du få koden til at fylde datagriddet med.

Dim adapter As New OleDbDataAdapter("select * from view_aktiviteter2004 order by AktivitetId", forbindelse)
        Dim resultat As New DataSet
        adapter.Fill(resultat, "view_aktiviteter2004")
        MyDataGrid1.DataSource = resultat.Tables("view_aktiviteter2004").DefaultView
        MyDataGrid1.DataBind()
        Label1.Visible = False
        Label2.Visible = False
        Label3.Visible = False
        Label4.Visible = False
        Label5.Visible = False
        Label6.Visible = False
        Label7.Visible = False
        Label8.Visible = False
        Label9.Visible = False
        Label10.Visible = False
        Label12.Visible = False
        Label14.Visible = False
        Textbox1.Visible = False
        TextBox2.Visible = False
        TextBox3.Visible = False
        TextBox4.Visible = False
        TextBox5.Visible = False
        TextBox6.Visible = False
        TextBox7.Visible = False
        TextBox8.Visible = False
        TextBox9.Visible = False
        Textbox10.Visible = False
        TextBox11.Visible = False
        Button2.Visible = False
        Button4.Visible = False
        DropDownList1.Visible = False
   
    End Sub
Avatar billede burningice Nybegynder
27. april 2004 - 08:49 #32
du kan ikke forvente at dit datagrid vil lave dine knapper når at du har autogeneratecolumns = true

Du skal have lavet dig en column-template hvor du sætter dit datagrid op.

tjek denne side: http://www.burningice.dk/eksperten.dk/491780/

kode:

<%@Import Namespace="System.Data" %>

<script language="c#" runat="server">

void Page_Load(object sender, EventArgs e) {

  if (!Page.IsPostBack) {
      dg.DataSource = MakeTable();
      this.DataBind();
  }
}

DataTable MakeTable() {
  DataTable dt = new DataTable();

  dt.Columns.Add(new DataColumn("id", typeof(int)));
  dt.Columns.Add(new DataColumn("data", typeof(string)));

  for (int i = 0; i < 10; i++) {
    DataRow dr = dt.NewRow();
    dr["id"] = i;
    dr["data"] = "data for row "+ i;
    dt.Rows.Add(dr);
  }
 
  return dt;
}

void dg_OnItemCommand(object sender, DataGridCommandEventArgs e) {

Response.Write(e.Item.Cells[1].Text);


}

</script>

<form runat="server">

<asp:datagrid id="dg" AutoGenerateColumns="false" OnItemCommand="dg_OnItemCommand" runat="server">

<Columns>

                  <asp:ButtonColumn
                      HeaderText=""
                      ButtonType="PushButton"
                      Text="Klik Mig"
                      CommandName="Klik" />

                  <asp:BoundColumn
                      HeaderText="id"
                      DataField="id"/>

                  <asp:BoundColumn
                      HeaderText="data"
                      DataField="data" />

              </Columns>


</asp:datagrid>

</form>
Avatar billede burningice Nybegynder
27. april 2004 - 08:51 #33
btw... smid alle dine labels, texboxe m.m. i en placeholder... den kan du så vise/gemme efter behov, istedet for at skrive 120943 linjer kode hver gang du skal vise/gemme dine kontroller.
Avatar billede dm0108 Nybegynder
27. april 2004 - 08:55 #34
det er lige sådan en metode jeg eftersøger, det skal bare være VB
Det er lykkedes mig at lave de her select knapper som autogenere sig selv.
men hvordan koden skal se ud i knappen???
Avatar billede burningice Nybegynder
27. april 2004 - 09:04 #35
du har egentlig al kode... jeg tror bare at du strikker det forkert sammen.

1) sørg for at dit datagrid bliver genereret korrekt med de rigtige kulonner (text og knapper)
2) lav din OnItemCommand-metode. Tjek om den virker ved en simpel Response.Write()
3) når de to første punkter er på plads, så skriv din kode der skal hente teksten fra den ønskede celle
Avatar billede dm0108 Nybegynder
27. april 2004 - 12:01 #36
når jeg compilere programmet, oprettes datagriden og den fyldes uden problemer.
Jeg har valgt nogen select knapper som generes automatisk ud for hver række.
Nu mangler jeg bare at få hevet de data ud som står i det yderste venstre felt. Og få lagt de data over i en variabel jeg kan lave en forespørgsel ud fra.
Avatar billede burningice Nybegynder
27. april 2004 - 12:26 #37
som du kan se ud fra min kode, så bruger jeg

e.Item.Cells[1].Text

som svarer til

e.Item.Cells(1).Text

i vb.

Hvis det ikke virker, så er der et andet sted i koden kæden er hoppet af
Avatar billede dm0108 Nybegynder
27. april 2004 - 12:50 #38
mine knapper virker jubiiiiiiiiiiiiiiiiiiiiiiiiiiii
skriv et svar så får du nogen point, jeg fandt godt nok selv løsningen på msdn men du hjalp mig i den rigtige retning.
Et lille tillægsspørgsmål jeg vil lægge de nyhentede data i nogle textboxe det går også godt indtil jeg støder ind i en DBNULL er der en hurtig løsning til det??
Avatar billede burningice Nybegynder
27. april 2004 - 13:18 #39
brug try-catch...

try {
  dinTxtBox.Text = reader.GetString(1);
} catch {}

skal lige oversættes til vb.net
Avatar billede dm0108 Nybegynder
16. maj 2004 - 18:42 #40
cyberfessor jeg mangler et svar så du kan få dine points for hjælpen
Avatar billede burningice Nybegynder
24. maj 2004 - 14:45 #41
svar :)
Avatar billede Slettet bruger
26. maj 2005 - 21:57 #42
tjek denne side: http://www.burningice.dk/eksperten.dk/491780/

Den projet som køre den side kan du ikke send mig det for jeg ikke forstå det

på lochness@ofir.dk  som zip fil

/Lars Ole Christiansen
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
Kurser inden for grundlæggende programmering

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