---
title: "En liten enkel fråga bara"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/85847-en-liten-enkel-fråga-bara"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Prästen"
published: "2003-09-12T11:01:27.000Z"
updated: "2003-09-16T16:51:01.000Z"
replies: 8
views: 347
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/85847-en-liten-enkel-fråga-bara"
---

# En liten enkel fråga bara

## #1 — Prästen, 2003-09-12T11:01Z

Hur får man fram värdet i en post i ett datagrid?.

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

## #2 — m_soderlund, 2003-09-12T11:37Z

Kan detta tillföra dig något? --\> <http://www.kursusmaterialer.dk/ASP.NET%20II/Dataset%20objektet/Paging.aspx>

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

## #3 — m_soderlund, 2003-09-12T11:41Z

..eller om du inte vill ha paging:

```
<%@ Page Language="VB" Strict="False" Debug="True" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.Oledb" %>
<script runat="server">

    Dim objDataset as New Dataset()

    Sub Page_Load()
     If Not Page.IsPostBack Then

      Dim CnStr as string = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & server.mappath("db2.mdb")
      Dim SQL as string = "SELECT Namn FROM tbl"
      Dim Cn as new OleDbConnection(CnStr)
      Dim objAdapter as new OledbDataAdapter(SQL, Cn)

          objAdapter.Fill(objDataSet, "tbl")
          dg1.DataSource = objDataSet.Tables("tbl").DefaultView
          dg1.DataBind()
          ViewState("Dataset")=objDataSet

         Cn.Close
     End if
    End sub

</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html>
<head>
    <title>VB dbms^DataGrid & DataSet</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>

<body>

    <form runat="server">
        <asp:datagrid id="dg1" runat="server" Gridlines="None">
        </asp:dataGrid>
    </form>

</body>
</html>
```

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

## #4 — Prästen, 2003-09-12T14:50Z

ojdå, det var inte så jag menade, jag menade såhär:

1\. du har ett datagrid.
2\. du uppdaterar ditt datagrid
3\. du vill lägga in de nya värdet som du ändrat i databasen
4\. hur gör man för att få fram värdet som man ändrat i datagriden, för att slutligen lägga in det i databasen?

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

## #5 — P, 2003-09-14T12:42Z

Finns flera olika sätt. Ett ör att titta på den rad som blivit uppdaterad och göra en "Instert-sats". Annars kan du kopiera hela allt och lägga in. Läs på <https://www.asp.net> där finns någon beskrivning i deras guide.

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

## #6 — Prästen, 2003-09-14T13:40Z

Här är min kod:

```
<%@ Page Language="C#" Debug="true" %>
<%@ import Namespace="System.Web.UI.WebControls" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.OleDb" %>
<script runat="server">

    public void MyDataGrid_Edit(Object sender, DataGridCommandEventArgs e) {
    MyDataGrid.EditItemIndex = (int)e.Item.ItemIndex; // vilket row i datagriden, inte vilken row i databasen
    BindDataGrid();
    }

    public void MyDataGrid_Update(Object sender, DataGridCommandEventArgs e) {
    string vardet = ((TextBox)e.Item.Cells[3].Controls[0]).Text;
    Response.Write(vardet);
    MyQueryMethod("UPDATE fragor SET fraga='" + vardet + "' WHERE ID=" + MyDataGrid.DataKeys[(int)e.Item.ItemIndex]);
    MyDataGrid.EditItemIndex = -1;
    BindDataGrid();
    }

    public void MyDataGrid_Cancel(Object sender, DataGridCommandEventArgs e) {
    MyDataGrid.EditItemIndex = -1;
    BindDataGrid();
    }

    public void MyDataGrid_Delete(Object sender, DataGridCommandEventArgs e) {
    //Response.Write("Delete");
    //Response.Write((int)e.Item.ItemIndex);
    //Response.Write("<BR>"+MyDataGrid.DataKeyField);
    //Response.Write("<BR>"+MyDataGrid.SelectedIndex);
    //Response.Write("<BR>"+MyDataGrid.DataKeys[(int)e.Item.ItemIndex]); // just mygrid.datakeys, gör så man får tag i ID numret som row:et i datagriden har i databasen.

    MyQueryMethod("DELETE from fragor where ID="+MyDataGrid.DataKeys[(int)e.Item.ItemIndex]);
    BindDataGrid();
    }

    DataSet MyQueryMethod(string sqlstring) {
    DataSet mittDataSet=new DataSet();
    OleDbConnection dbConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source=C:\\Documents and Settings\\olle\\Mina dokument\\WebMatrixServer\\question\\newquiz.mdb");
    OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(sqlstring, dbConnection);
    myDataAdapter.Fill(mittDataSet, "fragor");
    return mittDataSet;
    }

    void BindDataGrid() {
    MyDataGrid.DataSource=MyQueryMethod("SELECT * FROM fragor");
    MyDataGrid.DataBind();
    }

    protected void Page_Load(Object sender, EventArgs e) {
    BindDataGrid();
    }

    void SparaButton_Click(object sender, EventArgs e) {
    MyQueryMethod("INSERT INTO fragor (fraga) VALUES ('" + LaggTillTextBox.Text + "')");
    BindDataGrid();
    LaggTillTextBox.Text=null;
    }

</script>
<html>
<head>
</head>
<body>
    <form runat="server">
        <div align="left">
            <asp:DataGrid id="MyDataGrid" runat="server" DataKeyField="ID" OnCancelCommand="MyDataGrid_Cancel" OnUpdateCommand="MyDataGrid_Update" OnEditCommand="MyDataGrid_Edit" OnDeleteCommand="MyDataGrid_Delete" EnableViewState="true" AutoGenerateColumns="true">
                <Columns>
                    <asp:ButtonColumn Text="Delete" CommandName="Delete"></asp:ButtonColumn>
                    <asp:EditCommandColumn ButtonType="LinkButton" UpdateText="Update" CancelText="Cancel" EditText="Edit"></asp:EditCommandColumn>
                </Columns>
            </asp:DataGrid>
        </div>
        <div align="left">
        </div>
        <div align="left">Lägg till en fråga:<asp:TextBox id="LaggTillTextBox" runat="server"></asp:TextBox>
            <asp:Button id="SparaButton" onclick="SparaButton_Click" runat="server" Text="Spara"></asp:Button>
        </div>
    </form>
</body>
</html>
```

Vad som är lite underligt är att när jag får fram värdet i textboxen som jag nyss ändrade, så är det det gamla värdet i textboxen som stod där först, som jag får fram, alltså inte det "ändrade värdet"?? . skumt, nån som vet vad som kan vara fel?.

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

## #7 — Prästen, 2003-09-15T15:59Z

nån som e duktig på det här med asp.net och vill hjälpa prästen? :)

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

## #8 — Prästen, 2003-09-16T16:36Z

Jag har försökt flera dagar nu och kommer inte fram till nån lösning. Hur kommer det sig att den "uppdaterar" med det gamla värdet och inte med det nya?. Nån som vet?

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

## #9 — renholm, 2003-09-16T16:51Z

Jag är säker på att de som kan och har tid svarar på din fråga utan att du hela tiden "puttar" upp tråden.

Svaret på din fråga bör finns här: <http://samples.gotdotnet.com/quickstart/.> Titta under ASP.NET.

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/85847-en-liten-enkel-fråga-bara
