通过下拉列表批准/拒绝

时间:2013-10-04 18:44:54

标签: c# asp.net

之前我尝试通过按钮批准/拒绝并尝试对其进行编码..

当我添加批准/拒绝按钮

时,这是代码
    protected void GrdFileApprove_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "_Approve")
        {
            //using (SqlConnection con = DataAccess.GetConnected())
            using (SqlConnection con = new 
        SqlConnection(ConfigurationManager.ConnectionStrings

          ["mydms"].ConnectionString))
            {
                try
                {
                    con.Open();
                    int rowindex = Convert.ToInt32(e.CommandArgument);
                    GridViewRow row = (GridViewRow)
                   ((Control)e.CommandSource).NamingContainer;
                    Button Prove_Button = (Button)row.FindControl("BtnApprove");
                    SqlCommand cmd = new SqlCommand("approveee", con);

                    //cmd.CommandType = CommandType.StoredProcedure;
                    cmd.CommandType = CommandType.StoredProcedure;
                    //con.Execute("approve", new { UserID, DocID, ApproveID });
                    cmd.Parameters.Add(new SqlParameter("@UserID", UserID));
                    cmd.Parameters.Add(new SqlParameter("@DocID", DocID));
                    cmd.Parameters.Add(new SqlParameter("@ApproveID", ApproveID));

                    int result = cmd.ExecuteNonQuery();

                    if (result != 0)
                    {
                        GrdFileApprove.DataBind();
                    }
                }
                catch
                {
                    apfi.Text = "Not Approve";
                }
                finally
                {
                    con.Close();
                }
            }
        }
        else if (e.CommandName == "_Reject")
        {
            using (SqlConnection con = new  
           SqlConnection(ConfigurationManager.ConnectionStrings 

    ["mydms"].ConnectionString))
            {
                try
                {
                    con.Open();
                    int rowindex = Convert.ToInt32(e.CommandArgument);
                    GridViewRow row = (GridViewRow)
               ((Control)e.CommandSource).NamingContainer;
                    LinkButton Prove_Button = (LinkButton)row.FindControl("Button1");
                    SqlCommand cmd = new SqlCommand("sprejectapprove", con);

                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.Add(new SqlParameter("@UserID",UserID));
                    cmd.Parameters.Add(new SqlParameter("@DocID", DocID));
                    cmd.Parameters.Add(new SqlParameter("@ApproveID", ApproveID));

                    int result = cmd.ExecuteNonQuery();

                    if (result != 0)
                    {
                        GrdFileApprove.DataBind();
                    }
                }
                catch 
                {
                    apfi.Text = "Rejct";
                }
                finally
                {
                    con.Close();
                }
            }
        }
    }

当我添加下拉列表时这个grdiview ..

    <asp:GridView ID="GrdFileApprove" runat="server" BackColor="White" 
                  BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" 
                  GridLines="Horizontal" AutoGenerateColumns="False" 
                    onrowcommand="GrdFileApprove_RowCommand" OnRowDataBound="OnRowDataBound" >
                     <Columns>
                       <asp:TemplateField HeaderText="S no">
                           <ItemTemplate>
                               <%# Container.DataItemIndex+1 %>
                               <asp:HiddenField runat="server" ID="HdnFileID" Value='<%# Eval("DocID") %>' />
                           </ItemTemplate>
                       </asp:TemplateField>
                       <asp:BoundField DataField="DocID" HeaderText="DocumentID"  />
                       <asp:BoundField DataField="DocName" HeaderText="DocName"  />
                       <asp:BoundField DataField="Uploadfile" HeaderText="File Name" />
                       <asp:BoundField DataField="DocType" HeaderText="Document" />
                       <asp:BoundField DataField="DepType" HeaderText="Department" />

<%--                       <asp:BoundField HeaderText="ApproveID" DataField="ApproveID" ></asp:BoundField>
--%>                <asp:TemplateField>
                    <ItemTemplate>
                       <asp:Label ID="lblCountry" runat="server" Text='<%# Eval("ApproveID") %>' Visible = "false" />

                        <asp:DropDownList ID="DropDownList4" runat="server" class="vpb_dropdown">
                        </asp:DropDownList>
                    </ItemTemplate>
                </asp:TemplateField>


                   </Columns>
                <RowStyle BackColor="White" ForeColor="#333333" />
                <FooterStyle BackColor="White" ForeColor="#333333" />
                <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
                <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
                <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            </asp:GridView>

现在我想要下拉代码..当我点击批准/拒绝时,它可以批准/拒绝 如何编码以及如何通过下拉列表批准或拒绝..

1 个答案:

答案 0 :(得分:0)

我已经更改了DropDownList4的标记:

<asp:DropDownList ID="DropDownList4" runat="server" class="vpb_dropdown" AutoPostBack="true" OnSelectedIndexChanged="DropDownList4_SelectedIndexChanged">
    <asp:ListItem Text="Approve" Value="Approve"></asp:ListItem>
    <asp:ListItem Text="Reject" Value="Reject"></asp:ListItem>
</asp:DropDownList>

在代码中:

protected void DropDownList4_SelectedIndexChanged(object sender, EventArgs e)
{
    DropDownList ddl = sender as DropDownList;
    if (ddl.SelectedValue == "Approved")
    {
        //Code to approve
    }
    else if (ddl.SelectedValue == "Reject")
    {
        //Code to reject
    }
}