none
DataList RRS feed

  • Pergunta

  • Sei que este assunto está repetitivo, mas lá vai: Como obtenho os dados que estão dentro de um TextBox que está em um DataList. Não estou conseguindo obter os valores. Também gostaria de poder inserir dados no componente que está dentro do Datalist assim como alterar as propriedades do componente. Achei muita coisa na WEB em VB e estou apanhando bastante, então peço que quem tiver um exemplo em C# de como fazer isso e puder me passar eu ficaria muito grato. Abraços.

    Cristian P. J.

    sexta-feira, 17 de novembro de 2006 16:41

Respostas

  • <%@ Page Language="C#" %>
    <script runat="server">
    protected void DataList1_EditCommand(object source,
    DataListCommandEventArgs e)
    {
    DataList1.EditItemIndex = e.Item.ItemIndex;
    DataList1.DataBind();
    }

    protected void DataList1_CancelCommand(object source,
    DataListCommandEventArgs e)
    {
    DataList1.EditItemIndex = -1;
    DataList1.DataBind();
    }

    protected void DataList1_UpdateCommand(object source,
    DataListCommandEventArgs e)
    {
    String categoryID =
    DataList1.DataKeys[e.Item.ItemIndex].ToString();
    String categoryName =
    ((TextBox)e.Item.FindControl("textCategoryName")).Text;
    String description =
    ((TextBox) e.Item.FindControl("textDescription")).Text;

    SqlDataSource1.UpdateParameters["original_CategoryID"].DefaultValue
    = categoryID;
    SqlDataSource1.UpdateParameters["categoryName"].DefaultValue
    = categoryName;
    SqlDataSource1.UpdateParameters["Description"].DefaultValue
    = description;
    SqlDataSource1.Update();

    DataList1.EditItemIndex = -1;
    DataList1.DataBind();
    }
    </script>
    <html>
    <head runat="server"></head>
    <body>
    <form id="form1" runat="server">
    <div>
    <br />
    <asp:DataList runat="server"
    DataKeyField="CategoryID"
    DataSourceID="SqlDataSource1" ID="DataList1"
    OnEditCommand="DataList1_EditCommand"
    OnCancelCommand="DataList1_CancelCommand"
    OnUpdateCommand="DataList1_UpdateCommand">
    <EditItemTemplate>
    ID: <asp:Label ID="Label1" runat="server"
    Text='<%# Eval("CategoryID") %>'>
    </asp:Label>
    <br />
    Name: <asp:TextBox ID="textCategoryName" runat="server"
    Text='<%# Eval("CategoryName") %>'>
    </asp:TextBox>
    <br />
    Description: <asp:TextBox ID="textDescription"
    runat="server"
    Text='<%# Eval("Description") %>'>
    </asp:TextBox>
    <br />
    <asp:LinkButton ID="LinkButton1" runat="server"
    CommandName="update" >
    Save
    </asp:LinkButton>
    &nbsp;
    <asp:LinkButton ID="LinkButton2" runat="server">
    CommandName="cancel"
    Cancel
    </asp:LinkButton>
    </EditItemTemplate>
    <ItemTemplate>
    CategoryID:
    <asp:Label ID="CategoryIDLabel" runat="server"
    Text='<%# Eval("CategoryID") %>'>
    </asp:Label>
    <br />
    CategoryName:
    <asp:Label ID="CategoryNameLabel" runat="server"
    Text='<%# Eval("CategoryName") %>'>
    </asp:Label>
    <br />
    Description:
    <asp:Label ID="DescriptionLabel" runat="server"
    Text='<%# Eval("Description") %>'>
    </asp:Label>
    <br />
    <asp:LinkButton runat="server" ID="LinkButton1"
    CommandName="edit" >
    Edit
    </asp:LinkButton><br />
    </ItemTemplate>
    </asp:DataList>

    <asp:SqlDataSource ID="SqlDataSource1" runat="server"
    ConnectionString=
    "<%$ ConnectionStrings:NorthwindConnectionString %>"
    SelectCommand="SELECT [CategoryID], [CategoryName],
    [Description] FROM [Categories]"
    UpdateCommand="UPDATE [Categories] SET [CategoryName] =
    @CategoryName, [Description] = @Description
    WHERE [CategoryID] = @original_CategoryID">
    <UpdateParameters>
    <asp:Parameter Name="CategoryName" Type="String" />
    <asp:Parameter Name="Description" Type="String" />
    <asp:Parameter Name="original_CategoryID" Type="Int32" />
    </UpdateParameters>
    </asp:SqlDataSource>
    </div>
    </form>
    </body>
    </html>

    fonte: MSDN 2005

    Abs
    Diogo Gomes
    sexta-feira, 17 de novembro de 2006 19:28