DevExpress Lookupedit Set Selected Value - c#

I have following Grid where it populates InquiryDetails in the Win Form Load event
private void frmInquiryManagement_Load(object sender, EventArgs e)
{
InquiryService inquiry = new InquiryService();
clearGetInquiry();
DataTable dt = InfoPCMS.db.executeSelectQuery("select * from Inquiry");
gridInquiryList.DataSource = dt;
DataTable dt2 = InfoPCMS.db.executeSelectQuery("select * from Customer");
txtCustomer.Properties.DataSource = dt2;
txtCustomer.Properties.ValueMember = "Id";
txtCustomer.Properties.DisplayMember = "CustomerName";
txtCustomer.Properties.NullText = "Please Select Customer";
txtCustomer.Properties.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("CustomerName"));
txtCustomer.Properties.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("Address"));
txtCustomer.Properties.ShowHeader = false;
int nextid = inquiry.getNextId();
txtInquiryNo.Text = nextid.ToString();
}
By double clicking on a row, it searches for all the details and displays in "Get Inquiries" Tab as follows, code of that is below the image
private void selectInquiry(object sender, EventArgs e)
{
btnAddInquiry.Enabled = false;
btnUpdate.Enabled = true;
txtInquiryNo.Enabled = false;
String inquiryno = gridView1.GetFocusedDataRow()["InquiryNumber"].ToString();
InquiryService inquiry = new InquiryService();
inquiry = inquiry.searchInquiry(inquiryno);
if (inquiry != null)
{
txtInquiryNo.Text = inquiry.InquiryNumber.ToString();
//txtDate.Text = inquiry.InquiryDate;
txtDate.Text = InfoPCMS.conversion.convertDate(inquiry.InquiryDate);
txtCustomer.EditValue = inquiry.CustomerID.ToString();
txtInquiryTaken.Text = inquiry.InquiryTaken;
txtInspectionDetails.Text = inquiry.InspectionDetails;
txtProblemNature.Text = inquiry.ProblemNature;
txtProblemSource.Text = inquiry.ProblemSource;
txtSiteResponsible.Text = inquiry.SiteResponsible;
txtQuotationNo.Text = inquiry.QuotationNumber.ToString();
txtFollowupDetails.Text = inquiry.FollowupDetails;
txtInspectionDone.Text = inquiry.InspectionDone;
tabInquiryManagement.SelectedTabPage = xtraTabPage2;
}
else
{
MessageBox.Show(InfoPCMS.message.GET_NO_SUCH_RECORD_INFORMATION(), "Information");
}
}
First time you search it works fine, But after when you clear all the fields and the page and try another record it will give all the records but the Lookupedit value to its null state as follows,
private void clearGetInquiry() {
txtInquiryNo.Text = "";
txtDate.Text = "";
txtCustomer.EditValue = null;
txtInquiryTaken.Text = "";
txtInspectionDetails.Text = "";
txtProblemNature.Text = "";
txtProblemSource.Text = "";
txtSiteResponsible.Text = "";
txtQuotationNo.Text = "";
txtFollowupDetails.Text = "";
txtInspectionDone.Text = "";
btnAddInquiry.Text = "Add Inquiry";
InquiryService inquiry = new InquiryService();
int nextid = inquiry.getNextId();
txtInquiryNo.Text = nextid.ToString();
tabInquiryManagement.SelectedTabPage = xtraTabPage1;
btnAddInquiry.Enabled = true;
btnUpdate.Enabled = false;
txtInquiryNo.Enabled = true;
}
How can I get rid of this issue? (This happens even when you do the search after going into the "Get Inquiries" Tab and come.

Related

Cardview Columns using Devexpress

created a few seconds ago
Hi,
I am creating a web page in asp.net based on data from a database. This should result in a number of tab pages with card views on each tab with 5 columns and a maximum of 20 rows. The tab pages are working, the rows are working but the columns will not change from the default 3 columns.
I have tried setting the columnCount property at different stages, post and pre databinding. This getting frustrating.
I am having problems with setting a card views column count programmatically. I am setting it, have tried to set it in different places but it always goes to the default 3 columns :(
I am using C# in Visual studio 2017.
Here is the code I am using:
SqlDataSource sds = new SqlDataSource();
public string fName;
protected void Page_Load(object sender, EventArgs e)
{
string fid = Request.QueryString["FID"];
sds.ConnectionString = ConfigurationManager.ConnectionStrings["DataBaseConnection"].ToString();
sds.SelectCommand = "select name from [flashboard] where flashboardid = " + fid;
DataView fDet = (DataView)sds.Select(DataSourceSelectArguments.Empty);
fName = fDet.Table.Rows[0]["name"].ToString();
TitleLink.InnerHtml = fName;
sds.SelectCommand = "SELECT flashboardtabid, name FROM [FlashboardTab] WHERE flashboardid = " + fid+" order by SeqNo";
DataView fTab = (DataView)sds.Select(DataSourceSelectArguments.Empty);
TabPage tabDet;
ASPxPageControl tpc = ASPxPageControl1;
ASPxCardView cardGrp;
CardViewTextColumn cName;
CardViewHyperLinkColumn cEvidence;
foreach (DataRow tab in fTab.Table.Rows)
{
tabDet = new TabPage();
tabDet.Text = tab["name"].ToString();
tabDet.Name = "Tab"+tab["flashboardtabid"].ToString();
tabDet.ActiveTabStyle.Width = Unit.Percentage( 80);
cardGrp = new ASPxCardView();
cardGrp.ID = "CardGroup" + tab["flashboardtabid"].ToString() ;
tabDet.Controls.Add(cardGrp);
tpc.TabPages.Add(tabDet);
cardGrp.AutoGenerateColumns = false;
ASPxCardViewPagerSettings cvps = new ASPxCardViewPagerSettings(cardGrp);
cardGrp.EnableTheming = true;
cardGrp.Theme = "SoftOrange";
cvps.Visible = false;
cvps.SettingsTableLayout.ColumnCount = 5;
cvps.SettingsTableLayout.RowsPerPage = 20;
cardGrp.DataSource = GetData("SELECT cardid, Description, EvidencePage, SmartViewid FROM [flashboardcard] WHERE flashboardtabid = "+tab["flashboardtabid"] + " order by SeqNo");
cardGrp.Attributes.Add("Width", "80%");
cardGrp.Attributes.Add("style", "margin:auto");
cName = new CardViewTextColumn();
cName.Name = "Description";
cName.FieldName = "Description";
cEvidence = new CardViewHyperLinkColumn();
cEvidence.Name = "EvidencePage";
cEvidence.FieldName = "EvidencePage";
cEvidence.PropertiesHyperLinkEdit.Text = "Evidence";
cardGrp.Columns.Add(cName);
cardGrp.Columns.Add(cEvidence);
var layoutitem1 = new CardViewColumnLayoutItem(); // cardGrp.CardLayoutProperties.FindColumnItem("EvidencePage");
layoutitem1.ColumnName = "EvidencePage";
layoutitem1.ShowCaption = DevExpress.Utils.DefaultBoolean.False;
layoutitem1.HorizontalAlign = FormLayoutHorizontalAlign.Center;
var layoutitem2 = new CardViewColumnLayoutItem();
layoutitem2.ColumnName = "Description";
layoutitem2.ShowCaption = DevExpress.Utils.DefaultBoolean.False;
layoutitem2.HorizontalAlign = FormLayoutHorizontalAlign.Center;
layoutitem2.ParentContainerStyle.Font.Bold = true;
layoutitem2.ParentContainerStyle.Font.Size = FontUnit.Medium;
cardGrp.CardLayoutProperties.Items.Add(layoutitem2);
cardGrp.CardLayoutProperties.Items.Add(layoutitem1);
cardGrp.DataBind();
}
}
DataView GetData(String queryString)
{
DataView ds = new DataView();
sds.SelectCommand = queryString;
ds = (DataView)sds.Select(DataSourceSelectArguments.Empty);
return ds;
}
To resolve this issue with ColumnCount, I recommend you define it directly in the control's SettingsPager.SettingsTableLayout.ColumnCount property instead of specifying it in a new ASPxCardViewPagerSettings instance:
cardGrp.SettingsPager.SettingsTableLayout.ColumnCount = 5;
cardGrp.SettingsPager.SettingsTableLayout.RowsPerPage = 20;

"Index (zero based) must be greater than or equal to zero and less than the size of the argument list" at the end of an event

I get this exception when button_click method is over.
The problem is that in this part of code i do not have any string format or something like this.
I can't understand why this is happening.
The button is in a popup form in a detail grid. The weird thing is that the record is update just fine.
Below is my code.
protected void ASPxButton3_Click(object sender, EventArgs e)
{
try
{
DateTime birth = DateTime.Now.AddMonths(Convert.ToInt32(MONTH.Text));
birth = birth.AddYears(-Convert.ToInt32(YEAR.Text));
int key = 0;
Prsnout_RootObject prsn = new Prsnout_RootObject();
prsn.data = new PrsnData();
prsn.data.PRSNOUT = new List<PRSNOUT>();
prsn.data.PRSEXTRA = new List<PRSEXTRA>();
prsn.data.PRSOUTEXTRA = new List<PRSOUTEXTRA>();
if ((Session["newrecord"] != null))
{
if (!(Boolean)(Session["newrecord"]))
key = Convert.ToInt32(Session["KEYROWPRSN"].ToString().Split(';')[1]);
}
prsn.data.PRSNOUT.Add(new PRSNOUT
{
CODE = (key == 0 ? "*" : null),
NAME = ASPxTextBox4.Text,
NAME2 = ASPxTextBox4.Text,
CCCZOOSEX = Convert.ToInt32(ASPxComboBox1.Value),
CCCRATSA = Convert.ToInt32(CCCRATSA.Value),
CCCANIMAL = Convert.ToInt32(CCCANIMAL.Value),
UPDDATE = (((DateTime)DateTime.Now).ToString("yyyy-MM-dd HH:mm")),
BIRTHDATE = (((DateTime)birth).ToString("yyyy-MM-dd")),
CCCCHARACTER = Convert.ToInt32(CHARACTER.Value),
CCCORIGIN = country.Text,
CCCBREEDER = EKTROFEAS.Text,
CCCFOOD = EIDDIATR.Text,
CCCCHARACTERISTICS = IDIAITCHAR.Text,
CCCBLOOD = Convert.ToInt32(AIMA.Value),
CCCHISTORY = PAST.Text,
}
);
double kj = Convert.ToDouble(WEIGHT.Text);
prsn.data.PRSOUTEXTRA.Add(new PRSOUTEXTRA
{
BOOL01 = Convert.ToInt32(CROSS.Checked),
VARCHAR05 = MICROCHIP.Text,
NUM01 = WEIGHT.Text != "" ? WEIGHT.Text.ToString().Replace(",", ".") : "", //!= null ? int.Parse(WEIGHT.Text) : 0.0,
CCCHM = (Convert.ToInt32(DIATROFI.Items.FindByValue("1").Selected)).ToString(),
CCCDF = (Convert.ToInt32(DIATROFI.Items.FindByValue("2").Selected)).ToString(),
CCCCF = (Convert.ToInt32(DIATROFI.Items.FindByValue("3").Selected)).ToString(),
UTBL03 = Convert.ToInt32(Session["D"]),
UTBL04 = Convert.ToInt32(Session["U"]),
UTBL05 = Convert.ToInt32(Session["DV"]),
CCCCOLOUR1 = Convert.ToInt32(COLOUR.Items.FindByValue("GREY").Selected),
CCCCOLOUR2 = Convert.ToInt32(COLOUR.Items.FindByValue("RED").Selected),
CCCCOLOUR3 = Convert.ToInt32(COLOUR.Items.FindByValue("BROWN").Selected),
CCCCOLOUR4 = Convert.ToInt32(COLOUR.Items.FindByValue("WHITE").Selected),
CCCCOLOUR5 = Convert.ToInt32(COLOUR.Items.FindByValue("BLACK").Selected),
CCCCOLOUR6 = Convert.ToInt32(COLOUR.Items.FindByValue("MEL").Selected),
CCCCOLOUR7 = Convert.ToInt32(COLOUR.Items.FindByValue("BEZ").Selected),
CCCCOLOUR8 = Convert.ToInt32(COLOUR.Items.FindByValue("BLONDE").Selected),
CCCCOLOUR9 = Convert.ToInt32(COLOUR.Items.FindByValue("TIGER").Selected),
CCCCOLOUR10 = Convert.ToInt32(COLOUR.Items.FindByValue("APAL").Selected),
CCCCOLOUR11 = Convert.ToInt32(COLOUR.Items.FindByValue("PAL").Selected),
CCCCOLOUR12 = Convert.ToInt32(COLOUR.Items.FindByValue("STR").Selected),
CCCCOLOUR13 = Convert.ToInt32(COLOUR.Items.FindByValue("ISAV").Selected),
CCCCOLOUR14 = Convert.ToInt32(COLOUR.Items.FindByValue("ORED").Selected),
CCCCOLOUR15 = Convert.ToInt32(COLOUR.Items.FindByValue("ORMEL").Selected),
CCCCOLOUR16 = Convert.ToInt32(COLOUR.Items.FindByValue("ORF").Selected),
CCCCOLOUR17 = Convert.ToInt32(COLOUR.Items.FindByValue("IRON").Selected),
CCCCOLOUR18 = Convert.ToInt32(COLOUR.Items.FindByValue("RACE").Selected),
CCCCOLOUR19 = Convert.ToInt32(COLOUR.Items.FindByValue("FAIO").Selected),
CCCCOLOUR20 = Convert.ToInt32(COLOUR.Items.FindByValue("VWHITE").Selected)
}
);
string kkk = (Convert.ToInt32(COLOUR.Items.FindByValue("GREY").Selected)).ToString();
Def.result r = (Def.result)ws.SetData(ResultLogin, "setdata", "PRSNOUT", "Κτηνιατρείο(2)(2)", key, prsn.data);
if (ws.Error != null)
{
POST.HeaderText = "Error";
ASPxLabel2.Text = ws.Error;
}
else
{
POST.HeaderText = "";
ASPxLabel2.Text = "H καταχώρηση ολοκληρώθηκε.";
ASPxPopupControl1.ShowOnPageLoad = false;
}
}
catch (Exception ee)
{
POST.HeaderText = "Error";
ASPxLabel2.Text = ee.Message;
}
ASPxPopupControl1.ShowOnPageLoad = false;
POST.ShowOnPageLoad = true;
Session.Add("newrecord", false);
}

Cascading dropdown with Ajax

I am new to Ajax. I am implementing a cascading dropdown in a telerik RadGrid.
I am adding the dropdownList and CascadingDropDown as follows:
DropDownList droplist = new DropDownList();
droplist.ID = "DropDownListOrderTask";
droplist.AutoPostBack = true;
item["OrderTask"].Controls.Add(droplist);
CascadingDropDown ccdOrderTask = new CascadingDropDown();
ccdOrderTask.ID = "ccdOrderTask";
ccdOrderTask.Category = "OrderTask";
ccdOrderTask.TargetControlID = "DropDownListOrderTask";
ccdOrderTask.PromptText = "Select Order Task";
ccdOrderTask.LoadingText = "Loading OrderTask";
ccdOrderTask.ServiceMethod = "BindOrderTask";
ccdOrderTask.ServicePath = "ajaxservice.asmx";
TextBox txt = (TextBox)item["TaskOwner"].Controls[0];
txt.Visible = false;
droplist = new DropDownList();
droplist.ID = "DropDownListTaskOwner";
item["TaskOwner"].Controls.Add(droplist);
CascadingDropDown ccdTaskOwner = new CascadingDropDown();
ccdTaskOwner.ID = "ccdTaskOwner";
ccdTaskOwner.Category = "TaskOwner";
ccdTaskOwner.ParentControlID = "DropDownListOrderTask";
ccdTaskOwner.TargetControlID = "DropDownListTaskOwner";
ccdTaskOwner.PromptText = "Select Task Owner";
ccdTaskOwner.LoadingText = "Loading Task Owner";
ccdTaskOwner.ServiceMethod = "BindTaskOwner";
ccdTaskOwner.ServicePath = "ajaxservice.asmx";
On the PreRender I have the following:
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
var ajaxManager = RadAjaxManager.GetCurrent(Page);
if(ajaxManager != null)
ajaxManager.AjaxSettings.AddAjaxSetting(this._UpdatePanel, this._RadGrid1, this._RadLoadingPanel);
}
In the ajaxservice.asmx I have the following:
[WebMethod]
public CascadingDropDownNameValue[] BindOrderTask(string knownCategoryValues, string category)
{
OrderRequestTaskTypeTable _orderRequestTaskTypeTable = new OrderRequestTaskType_List().ExecuteTypedDataTable();
List<CascadingDropDownNameValue> orderTaskDetails = new List<CascadingDropDownNameValue>();
foreach(DataRow dtRow in _orderRequestTaskTypeTable.Rows)
{
String orderTaskId = dtRow["OrderRequestTaskTypeId"].ToString();
String orderTaskName = dtRow["DescriptionTaskType"].ToString();
orderTaskDetails.Add(new CascadingDropDownNameValue(orderTaskId, orderTaskName));
}
return orderTaskDetails.ToArray();
}
The first dropDown, DropDownListOrderTask contains no values. On debugging through Firebug it says: ReferenceError: BindOrderTask is not defined
I am sure I am missing something but not sure what. Please help me.

Dynamic Report building Refresh() is not changing data

I am trying to View a report dynamically from code behind. But when the parameters are changed from dynamic textboxes added in the page. in the report refresh() the data is not changed.
I call sqlDS() and reportBuild() in the !IsPostback.
This method is for defining the sqlDatasource:
protected void sqlDS()
{
string conString, prName = "";
int counter = 0;
Reporting rep = new Reporting();
rep = rep.searchReport(repID_HF.Value);
Reporting repFold = new Reporting();
repFold = repFold.searchFolder(foldID_HF.Value);
if (repFold.FolderName.Split('(')[1] == "Web Reports)")
{
conString = dbSql.connectionStringAll;
prName = dbSql.providerName;
}
else
{
conString = db.connectionStringAll;
prName = db.providerName;
}
SqlDataSource1.ConnectionString = conString;
SqlDataSource1.ProviderName = prName;
string sqlString = System.IO.File.ReadAllText(Server.MapPath("~/Reports/SQLs/" + rep.SqlFile));
sqlString.Replace(System.Environment.NewLine, " ");
SqlDataSource1.SelectCommand = sqlString;
SqlDataSource1.CancelSelectOnNullParameter = false;
Reporting repParam = new Reporting();
allPs = repParam.getAllParamRep(rep.RepID);
foreach (Reporting itemParam in allPs)
{
if (itemParam.ParamType == "Date")
{
SqlDataSource1.SelectParameters.Add(":" + itemParam.ParamName, itemParam.ParamDefaultValue);
counter++;
}
else if (itemParam.ParamType == "Text")
{
SqlDataSource1.SelectParameters.Add(":" + itemParam.ParamName, itemParam.ParamDefaultValue);
counter++;
}
else if (itemParam.ParamType == "Menu")
{
counter++;
}
}
}
This method is for declaring the report properties:
protected void reportBuild()
{
Reporting rep2 = new Reporting();
rep2 = rep2.searchReport(repID_HF.Value);
ReportViewer1.LocalReport.ReportPath = "Reports/RDLC/" + rep2.RdlcFile;
this.ReportViewer1.LocalReport.ReportEmbeddedResource = rep2.RdlcFile;
ReportParameter[] paramss = new ReportParameter[SqlDataSource1.SelectParameters.Count];
for (int i = 0; i < SqlDataSource1.SelectParameters.Count; i++)
{
paramss[i] = new ReportParameter(SqlDataSource1.SelectParameters[i].Name.Split(':')[1], SqlDataSource1.SelectParameters[i].DefaultValue);
}
ReportDataSource rds = new ReportDataSource(rep2.DatasetName.Split('.')[0], SqlDataSource1);
ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.LocalReport.DataSources.Add(rds);
//paramss[0] = new ReportParameter("TDATE", SqlDataSource1.SelectParameters[0].DefaultValue);
//paramss[1] = new ReportParameter("CUST_NUM", SqlDataSource1.SelectParameters[1].DefaultValue);
ReportViewer1.LocalReport.SetParameters(paramss);
ReportViewer1.LocalReport.Refresh();
}
In the reportViewer refresh method i try to set the new parameters according to the dynamic textboxes added in the page:
protected void ReportViewer1_ReportRefresh(object sender, System.ComponentModel.CancelEventArgs e)
{
foreach (Control txt in Panel1.Controls)
{
if (txt is TextBox)
{
txts.Add(txt);
}
}
foreach (TextBox txtbox in txts)
{
Reporting repP = new Reporting();
repP = repP.searchParam(txtbox.Attributes["pID"].ToString());
if (repP.ParamType == "Date")
{
SqlDataSource1.SelectParameters[":" + repP.ParamName].DefaultValue = txtbox.Text;
}
else if (repP.ParamType == "Text")
{
SqlDataSource1.SelectParameters[":" + repP.ParamName].DefaultValue = txtbox.Text;
}
}
//Reporting r = new Reporting();
//r = r.searchReport(repID_HF.Value);
//Reporting rep = new Reporting();
//rep = rep.searchReport(repID_HF.Value);
//ReportDataSource rds = new ReportDataSource(rep.DatasetName.Split('.')[0], SqlDataSource1);
//this.ReportViewer1.Reset();
//ReportViewer1.LocalReport.DataSources.Clear();
//ReportViewer1.LocalReport.DataSources.Add(rds);
ReportParameterInfoCollection x = ReportViewer1.LocalReport.GetParameters();
//Response.Redirect(Request.RawUrl);
ReportViewer1.LocalReport.Refresh();
}
I tried debugging and found every thing is working correctly the SQL parameters changed, the Report Parameters also is changed.
so why the data in the report is not changed? Plz help me
I got a better and easier way to solve this problem using this link
http://www.igregor.net/post/2007/12/Adding-Controls-to-an-ASPNET-form-Dynamically.aspx
And you can use array of strings to pass attributes.

Checking all fields are validated successfully through buttonclick in C#

In my Windows form I have a Button called Save. When I click on that button, data should be saved to database if all fields in the form are validated successfully. Otherwise, an error message should be displayed.
I have tried:
private void btnNotesSave_Click(object sender, EventArgs e)
{
if (this.ValidateChildren(ValidationConstraints.None))
{
DataRow dr = ds.Tables[0].NewRow();
dr[0] = txtName.Text;
dr[1] = txtPersonResponsible.Text;
dr[2] = txtPersonResponsibleIDDetails.Text;
dr[3] = txtAlternativePersonResponsible.Text;
dr[4] = txtAlternativePersonResponsibleIDDetails.Text;
dr[5] = txtCompanyRegNo.Text;
dr[6] = txtVatNo.Text;
dr[7] = txtPremiseNo.Text;
dr[8] = txtStreetName1.Text;
dr[9] = txtStreetName2.Text;
dr[10] = txtSubUrb.Text;
dr[11] = txtCity.Text;
dr[12] = txtProvince.Text;
dr[13] = txtCountry.Text;
dr[14] = txtPinCode.Text;
dr[15] = txtPostalPremiseNo.Text;
dr[16] = txtPostalStreetName1.Text;
dr[17] = txtPostalStreetName2.Text;
dr[18] = txtPostalSubUrb.Text;
dr[19] = txtPostalCity.Text;
dr[20] = txtPostalProvince.Text;
dr[21] = txtPostalCountry.Text;
dr[22] = txtPostalPinCode.Text;
dr[23] = txtTelephone1.Text;
dr[24] = txtTelephone2.Text;
dr[25] = txtMobile1.Text;
dr[26] = txtMobile2.Text;
dr[27] = txtFax1.Text;
dr[28] = txtFax2.Text;
dr[29] = txtEmail1.Text;
dr[30] = txtEmail2.Text;
dr[31] = txtWebsite.Text;
dr[32] = txtWorkingHours.Text;
dr[33] = txtAccountHolderName.Text;
dr[34] = txtBankName.Text;
dr[35] = txtAccountType.Text;
dr[36] = txtAccountNumber.Text;
dr[37] = txtBranchCode.Text;
dr[38] = rtxtBanking.Text;
dr[39] = txtCreditLimit.Text;
dr[40] = txtStartingDate.Text;
dr[41] = txtEndingDate.Text;
dr[42] = lstFinance.Text;
dr[43] = rtxtFinance.Text;
dr[44] = rtxtNotes.Text;
ds.Tables[0].Rows.Add(dr);
cb = new SqlCommandBuilder(da);
da.Update(ds, "CompanyDetails");
MessageBox.Show("data saved to DB");
}
else
MessageBox.Show("please fill all mandatory fields");
}
But this is not working.
Thanks in advance!!!

Categories