Hi I have problem with dropdownlist I can't update gridview in popup. When i click edit everything was show me but I can save. If Idelete dropdown and leave textbox it was save.Please help
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="LeftPanelControl.ascx" TagName="LeftPanelControl" TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<script src="scripts/jquery-1.3.2.min.js" type="text/javascript"></script>
<script src="scripts/jquery.blockUI.js" type="text/javascript"></script>
<script type = "text/javascript">
function BlockUI(elementID) {
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_beginRequest(function() {
$("#" + elementID).block({ message: '<table align = "center"><tr><td>' +
'<img src="images/loadingAnim.gif"/></td></tr></table>',
css: {},
overlayCSS: { backgroundColor: '#000000', opacity: 0.6
}
});
});
prm.add_endRequest(function() {
$("#" + elementID).unblock();
});
}
$(document).ready(function() {
BlockUI("<%=pnlAddEdit.ID %>");
$.blockUI.defaults.css = {};
});
function Hidepopup() {
$find("popup").hide();
return false;
}
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Menu" Runat="Server">
<uc1:LeftPanelControl ID="leftPanelControl" runat="server" />
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div id="content_checkhelpdesk">
<div class="side-titlereport">
<asp:Label ID="Label6" runat="server" Text="Edit Vendor"></asp:Label>
</div>
<br />
<br />
<br />
<div class="report">
<br />
<br />
<br />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
PageSize="25"
CssClass="yui-grid" EnableModelValidation="True"
Width="100%" DataKeyNames="IDVendor">
<Columns>
<asp:BoundField DataField = "IDVendor" HeaderText = "Vendor ID" HtmlEncode = "true" />
<asp:BoundField DataField = "Vendor" HeaderText = "Vendor" HtmlEncode = "true" />
<asp:BoundField DataField = "Vendornick" HeaderText = "Vendor nick" HtmlEncode = "true" />
<asp:BoundField DataField = "Adress" HeaderText = "Adress" HtmlEncode = "true" />
<asp:BoundField DataField = "www" HeaderText = "www" HtmlEncode = "true" />
<asp:BoundField DataField = "Tel" HeaderText = "Tel" HtmlEncode = "true" />
<asp:BoundField DataField = "email" HeaderText = "email" HtmlEncode = "true" />
<asp:BoundField DataField = "ContactPerson" HeaderText = "Contact" HtmlEncode = "true" />
<asp:BoundField DataField = "group1" HeaderText = "Group" HtmlEncode = "true" />
<asp:TemplateField ItemStyle-Width = "30px" HeaderText = "Edit Vendor">
<ItemTemplate>
<asp:LinkButton ID="lnkEdit" runat="server" Text = "Edit" OnClick = "Edit"></asp:LinkButton>
</ItemTemplate>
<ItemStyle Width="30px" />
</asp:TemplateField>
</Columns>
<PagerStyle ></PagerStyle>
<HeaderStyle BorderColor="#CCCCCC" />
<AlternatingRowStyle ></AlternatingRowStyle>
</asp:GridView>
<br />
<asp:Panel ID="pnlAddEdit" runat="server" CssClass="modalPopup" style = "display:none">
<asp:Label Font-Bold = "true" ID = "Label4" runat = "server" Text = "Vendor Details" ></asp:Label>
<br />
<table align = "center">
<tr>
<td>
<asp:Label ID = "Label1" runat = "server" Text = "Vendor ID" ></asp:Label>
</td>
<td>
<asp:TextBox ID="txtIDVendor" Width = "40px" MaxLength = "5" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID = "Label2" runat = "server" Text = "Vendor" ></asp:Label>
</td>
<td>
<asp:TextBox ID="txtVendor" runat="server" CssClass="tmtextbox"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID = "Label3" runat = "server" Text = "Vendor nick" ></asp:Label>
</td>
<td>
<asp:TextBox ID="txtVendornick" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID = "Label7" runat = "server" Text = "Adress" ></asp:Label>
</td>
<td>
<asp:TextBox ID="txtAdress" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID = "Label8" runat = "server" Text = "WWW" ></asp:Label>
</td>
<td>
<asp:TextBox ID="txtWWW" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID = "Label9" runat = "server" Text = "Tel" ></asp:Label>
</td>
<td>
<asp:TextBox ID="txtTel" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID = "Label10" runat = "server" Text = "email" ></asp:Label>
</td>
<td>
<asp:TextBox ID="txtemail" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID = "Label11" runat = "server" Text = "ContactPerson" ></asp:Label>
</td>
<td>
<asp:TextBox ID="txtContactPerson" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID = "Label5" runat = "server" Text = "Group" ></asp:Label>
</td>
<td>
<asp:DropDownList ID="ddlgroup" runat="server">
</asp:DropDownList>
</td>
</tr>
<tr>
<td>
<asp:Button ID="btnSave" runat="server" Text="Save" OnClick = "Save" />
</td>
<td>
<asp:Button ID="btnCancel" runat="server" Text="Cancel" OnClientClick = "return Hidepopup()"/>
</td>
</tr>
</table>
</asp:Panel>
<asp:Label ID="lblConnResults" runat="server" Text=""></asp:Label>
<asp:Label ID="lbldate" runat="server" Text=""></asp:Label>
<asp:Label ID="lblgroup" runat="server" Text=""></asp:Label>
</div>
</div>
<asp:LinkButton ID="lnkFake" runat="server"></asp:LinkButton>
<cc1:ModalPopupExtender ID="popup" runat="server" DropShadow="false"
PopupControlID="pnlAddEdit" TargetControlID = "lnkFake"
BackgroundCssClass="modalBackground">
</cc1:ModalPopupExtender>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID = "GridView1" />
<asp:AsyncPostBackTrigger ControlID = "btnSave" />
</Triggers>
</asp:UpdatePanel>
private String strConnString = ConfigurationManager.ConnectionStrings["HelpdeskConnectionString"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
lbldate.Visible = false;
lbldate.Text = DateTime.Now.ToString("yyyy-MM-dd");
if (!this.IsPostBack)
{
FillGroupList();
BindData();
}
}
private void FillGroupList()
{
ddlgroup.Items.Clear();
string selectSQL = "SELECT IDGroup,[Group] FROM PurchasedVendor_Group";
SqlConnection con = new SqlConnection(strConnString);
SqlCommand cmd = new SqlCommand(selectSQL, con);
SqlDataReader reader;
try
{
con.Open();
reader = cmd.ExecuteReader();
while (reader.Read())
{
ListItem newItem = new ListItem();
newItem.Text = reader["Group"].ToString();
newItem.Value = reader["IDGroup"].ToString();
ddlgroup.Items.Add(newItem);
}
reader.Close();
}
catch (Exception err)
{
lblConnResults.Text = "Error reading list of group. ";
lblConnResults.Text += err.Message;
}
finally
{
con.Close();
}
}
protected void Edit(object sender, EventArgs e)
{
using (GridViewRow row = (GridViewRow)((LinkButton)sender).Parent.Parent)
{
txtIDVendor.ReadOnly = true;
txtIDVendor.Text = row.Cells[0].Text;
txtVendor.Text = row.Cells[1].Text;
txtVendornick.Text = row.Cells[2].Text;
txtAdress.Text = row.Cells[3].Text;
txtWWW.Text = row.Cells[4].Text;
txtTel.Text = row.Cells[5].Text;
txtemail.Text = row.Cells[6].Text;
txtContactPerson.Text = row.Cells[7].Text;
popup.Show();
}
}
protected void Save(object sender, EventArgs e)
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "AddUpdateVendor";
cmd.Parameters.AddWithValue("@IDVendor", txtIDVendor.Text);
cmd.Parameters.AddWithValue("@Vendor", txtVendor.Text);
cmd.Parameters.AddWithValue("@Vendornick", txtVendornick.Text);
cmd.Parameters.AddWithValue("@Adress", txtAdress.Text);
cmd.Parameters.AddWithValue("@www", txtWWW.Text);
cmd.Parameters.AddWithValue("@Tel", txtTel.Text);
cmd.Parameters.AddWithValue("@email", txtemail.Text);
cmd.Parameters.AddWithValue("@ContactPerson", txtContactPerson.Text);
cmd.Parameters.AddWithValue("@IDGroup", ddlgroup1.SelectedValue);
cmd.Parameters.AddWithValue("@Vendoreditdate", lbldate.Text);
GridView1.DataSource = GetData(cmd);
GridView1.DataBind();
}
}
private void BindData()
{
string strQuery = "SELECT PV.IDVendor, PV.Vendor, PV.Vendornick, PV.Adress, PV.www, PV.Tel, PV.email, PV.ContactPerson, PVG.[Group] as Group1, PV.IDIteam1, PV.Paymenterms" +
" FROM PurchasedVendor AS PV LEFT OUTER JOIN " +
" PurchasedVendor_Group AS PVG ON PV.IDGroup = PVG.IDGroup ";
SqlCommand cmd = new SqlCommand(strQuery);
GridView1.DataSource = GetData(cmd);
GridView1.DataBind();
}
private DataTable GetData(SqlCommand cmd)
{
DataTable dt = new DataTable();
using (SqlConnection con = new SqlConnection(strConnString))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.Connection = con;
con.Open();
sda.SelectCommand = cmd;
sda.Fill(dt);
return dt;
}
}
}