Hi my name is vishal from India(Chennai).
i am an amateur in c# with windows forms. i am in process of converting vb6 with ms access project to c# with sql server 2008. i do find at times difficult to transform vb6 code to c#.
The problem i am facing is i do not know how to call a method/function declared in mdi parent form in child form? i have browsed through net but so far with no success. Anyone please help me.
My mdi parent form name: MDIParent1.cs
my child form name: Patient.cs
my mdi parent form method/function: public string updateUserActivities()
can anyone please help help me how to call this method/function in my child form?
My MdiParent1.cs code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Configuration;
namespace DRRS_in_Csharp
{
public partial class MDIParent1 : Form
{
private int childFormNumber = 0;
long pUserID;
public MDIParent1()
{
InitializeComponent();
}
private void ShowNewForm(object sender, EventArgs e)
{
Form childForm = new Form();
childForm.MdiParent = this;
childForm.Text = "Window " + childFormNumber++;
childForm.Show();
}
private void OpenFile(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
openFileDialog.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*";
if (openFileDialog.ShowDialog(this) == DialogResult.OK)
{
string FileName = openFileDialog.FileName;
}
}
private void SaveAsToolStripMenuItem_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
saveFileDialog.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*";
if (saveFileDialog.ShowDialog(this) == DialogResult.OK)
{
string FileName = saveFileDialog.FileName;
}
}
private void ExitToolsStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
}
private void CutToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void CopyToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void PasteToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void ToolBarToolStripMenuItem_Click(object sender, EventArgs e)
{
this.IsMdiContainer = true;
Form Patient = new Form();
Patient.MdiParent = this;
Patient.Show();
}
private void StatusBarToolStripMenuItem_Click(object sender, EventArgs e)
{
statusStrip.Visible = statusBarToolStripMenuItem.Checked;
}
private void CascadeToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.Cascade);
}
private void TileVerticalToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileVertical);
}
private void TileHorizontalToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileHorizontal);
}
private void ArrangeIconsToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.ArrangeIcons);
}
private void CloseAllToolStripMenuItem_Click(object sender, EventArgs e)
{
foreach (Form childForm in MdiChildren)
{
childForm.Close();
}
}
public SqlConnectionStringBuilder connBuilder;
public SqlConnection conn;
private void initializeDB()
{
connBuilder = new SqlConnectionStringBuilder();
connBuilder.InitialCatalog = "TusDB";
connBuilder.DataSource = "NPD-4\\SQLEXPRESS";
connBuilder.IntegratedSecurity = true;
connBuilder.AsynchronousProcessing = true;
conn = new SqlConnection(connBuilder.ToString());
conn.Open();
}
public string updateUserActivities(long refID, int ActType, string ActivityStr)
{
SqlDataAdapter da = new SqlDataAdapter();
int b;
da.InsertCommand = new SqlCommand("Insert into user_activities2(user_id,row_upd_date,activity,type,ref_id)" + "Values(@user_id,@row_upd_date,@activity,@type,@ref_id)", conn);
da.InsertCommand.Parameters.Add("@user_id", SqlDbType.VarChar).Value = pUserID;
da.InsertCommand.Parameters.Add("@row_upd_date", SqlDbType.DateTime).Value = Convert.ToDateTime(this);
da.InsertCommand.Parameters.Add("@activity", SqlDbType.VarChar).Value = ActivityStr;
da.InsertCommand.Parameters.Add("@type", SqlDbType.Int).Value = ActType;
da.InsertCommand.Parameters.Add("@ref_id", SqlDbType.VarChar).Value = refID;
b = da.InsertCommand.ExecuteNonQuery();
conn.Close();
}
private void MDIParent1_Load(object sender, EventArgs e)
{
initializeDB();
}
private void patientToolStripMenuItem_Click(object sender, EventArgs e)
{
}
}
}
Patient.cs code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Data.Sql;
namespace DRRS_in_Csharp
{
public partial class Patient : Form
{
public Patient()
{
InitializeComponent();
}
private void Patient_Load(object sender, EventArgs e)
{
SqlConnection conn=new SqlConnection("Data Source=NPD-4\\SQLEXPRESS;Initial Catalog=TusDB;Persist Security Info=true");
SqlDataAdapter da = new SqlDataAdapter();
dtDOB.MaxDate=Convert.ToDateTime(this);
dtDOB.Value=Convert.ToDateTime(this);
DataTable dt=new DataTable();
cboSex.ValueMember="patient_sex";
cboSex.DisplayMember="Sex";
cboVirology.ValueMember="Virus type";
cboVirology.DisplayMember="Virus type";
LoadDoctorID();
}
public string LoadDoctorID()
{
String LDoctID;
String dMstr;
DataTable dt=new DataTable();
SqlConnection conn=new SqlConnection("Data Source=NPD-4\\SQLEXPRESS;Initial Catalog=Tuscan7;Persist Security Info=true");
SqlDataAdapter da=new SqlDataAdapter();
conn.Open();
da.SelectCommand=new SqlCommand("Select p.doctor_id as doctor_id,n.doctor_first_name as doctor_fname,n.doctor_middle_name as doctor_mname,n.doctor_last_name as doctor_lname from doctordetail n,doctor p where n.doctor_id=p.doctor_id and n.status=true",conn);
dMstr="";
LDoctID="";
cboDoctor.Items.Clear();
while(dt.Rows.Count!=-1)
da.InsertCommand.Parameters.Add("doctor_id",SqlDbType.VarChar).Value=LDoctID;
LDoctID=SqlCommand("Select replace(6-length(LDoctID))+LDoctID");
if (da.InsertCommand.Parameters.Add("doctor_fname",SqlDbType.VarChar).Value==null)
da.InsertCommand.Parameters.Add("doctor_fname",SqlDbType.VarChar).Value=dMstr;
if (da.InsertCommand.Parameters.Add("doctor_mname",SqlDbType.VarChar).Value==null)
dMstr=dMstr+ da.InsertCommand.Parameters.Add("doctor_mname",SqlDbType.VarChar).Value;
if (da.InsertCommand.Parameters.Add("doctor_lname",SqlDbType.VarChar).Value==null)
dMstr=dMstr+da.InsertCommand.Parameters.Add("doctor_lname",SqlDbType.VarChar).Value;
cboDoctor.Items.Add(dMstr);
cboDoctor.Items.Add(LDoctID);
da.InsertCommand.Parameters.Add("doctor_id",SqlDbType.VarChar).Value=cboDoctor.Items.Add(cboDoctor.SelectedIndex);
da.InsertCommand.ExecuteNonQuery();
}
public string loadPatient(string mpatientID)
{
patientID = mpatientID;
DataTable dt = new DataTable();
SqlConnection conn = new SqlConnection("Data Source=NPD-4\\SQLEXPRESS;Initial Catalog=Tuscan7;Persist Security Info=true");
SqlDataAdapter da = new SqlDataAdapter();
conn.Open();
da.SelectCommand = new SqlCommand("Select p.patient_id as patient_id,p.patient_dOB as patient_dOB,n.patient_first_name as patient_fname,n.patient_middle_name as patient_mname,n.patient_last_name as patient_lname,p.patient_sex as patient_sex,n.virology as virology,a.apartment_name as apartment_name,a.door_number as door_number,a.street_name_1 as street_name_1,a.street_name_2 as street_name_2,a.street_name_3 as street_name_3,a.village as village,a.city as city,a.state as state,a.country as country,a.apartment_number as apartment_number,a.pincode as pincode from Patient_name n,Patient_id p,address2 a where n.patient_id=p.patient_id and a.patient_id=p.patient_id and p.patient_id="+patientID+" and n.status=true and a.status=true");
if (da.SelectCommand != null)
conn.Open();
object selecteditem=cboVirology.SelectedIndex;
int x;
da.InsertCommand=new SqlCommand("Insert into Patient_name(patient_first_name,patient_middle_name,patient_last_name,virology)"+"Values(@patient_first_name,@patient_middle_name,@patient_last_name,@virology)",conn);
while (dt.Rows.Count != -1)
txtFname.Text = da.InsertCommand.Parameters.Add("@patient_first_name", SqlDbType.VarChar).Value.ToString();
txtMname.Text=da.InsertCommand.Parameters.Add("@patient_middle_name",SqlDbType.VarChar).Value.ToString();
txtLname.Text = da.InsertCommand.Parameters.Add("@patient_last_name", SqlDbType.VarChar).Value.ToString(); ;
selecteditem=da.InsertCommand.Parameters.Add("@virology",SqlDbType.Int).Value.GetType();
object selecteditema = cboSex.SelectedIndex;
int y;
da.InsertCommand = new SqlCommand("Insert into Patient_id(patient_dOB,patient_sex)" + "Values(@patient_dOB,@patient_sex)", conn);
dtDOB.Value=da.InsertCommand.Parameters.Add("@patient_dOB", SqlDbType.DateTime).Value.GetType();
selecteditema = da.InsertCommand.Parameters.Add("@patient_sex", SqlDbType.Int).Value.GetType();
int z;
da.InsertCommand = new SqlCommand("Insert into address2(apartment_name,door_number,street_name_1,street_name_2,street_name_3,village,city,state,country,apartment_number,pincode)" + "Values(@apartment_name,@door_number,@street_name_1,@street_name_2,@street_name_3,@village,@city,@state,@country,@apartment_number,@pincode)", conn);
txtApartmentName.Text = da.InsertCommand.Parameters.Add("@apartment_name", SqlDbType.NVarChar).Value.ToString();
txtDoorNo.Text = da.InsertCommand.Parameters.Add("@door_number", SqlDbType.VarChar).Value.ToString();
txtStreet1.Text = da.InsertCommand.Parameters.Add("@street_name_1", SqlDbType.VarChar).Value.ToString();
txtStreet2.Text = da.InsertCommand.Parameters.Add("@street_name_2", SqlDbType.VarChar).Value.ToString();
txtStreet3.Text = da.InsertCommand.Parameters.Add("@street_name_3", SqlDbType.VarChar).Value.ToString();
txtVillageArea.Text = da.InsertCommand.Parameters.Add("@village", SqlDbType.VarChar).Value.ToString();
txtCity.Text = da.InsertCommand.Parameters.Add("@city", SqlDbType.VarChar).Value.ToString();
txtState.Text = da.InsertCommand.Parameters.Add("@state", SqlDbType.VarChar).Value.ToString();
txtCountry.Text = da.InsertCommand.Parameters.Add("@country", SqlDbType.VarChar).Value.ToString();
txtApartmentNo.Text = da.InsertCommand.Parameters.Add("@apartment_number", SqlDbType.VarChar).Value.ToString();
cboSex.Enabled = false;
dtDOB.Enabled = false;
txtPostalCode.Text = da.InsertCommand.Parameters.Add("@pincode", SqlDbType.VarChar).Value.ToString();
da.SelectCommand = new SqlCommand("Select * from Patient_contact where patient_id=" + patientID + " and status=true");
da.InsertCommand = new SqlCommand("Insert into Patient_contact(homenumber,mobilenumber)" + "Values(@homenumber,@mobilenumber)", conn);
while (dt.Rows.Count != -1)
txtHnumber.Text = da.InsertCommand.Parameters.Add("@homenumber", SqlDbType.NVarChar).Value.ToString();
txtMnumber.Text = da.InsertCommand.Parameters.Add("@mobilenumber", SqlDbType.NVarChar).Value.ToString();
conn.Close();
int b;
long i;
da.InsertCommand = new SqlCommand("Insert into doctorpatient2(doctor_id)" + "Values(@doctor_id)", conn);
da.SelectCommand=new SqlCommand("Select * from doctorpatient2 where patient_id="+patientID+" and status=true");
while (dt.Rows.Count != -1)
for (i = 0; i < cboDoctor.Items.Count - 1; i++)
if (cboDoctor.Items.Add(i)==da.InsertCommand.Parameters.Add("@doctor_id", SqlDbType.VarChar).Value.ToString())
cboDoctor.SelectedItem = i;
}
private string SqlCommand(string p)
{
throw new NotImplementedException();
}
private void button1_Click(object sender, EventArgs e)
{
long PatientID;
string dFieldName = "";
if (txtFname.Text.ToString().Trim() == "")
{
dFieldName = "First Name should not be empty";
}
else if (cboSex.Text.ToString().Trim() == "")
{
dFieldName = "Sex should not be empty";
}
else if (cboVirology.Text.ToString().Trim() == "")
{
dFieldName = "Virology state of patient should not be empty";
}
else if (txtHnumber.Text.ToString().Trim() == "")
{
dFieldName = "Home number of patient should not be empty";
}
else if (txtCity.Text.ToString().Trim() == "")
{
dFieldName = "City of patient should not be empty";
}
else if (txtCountry.Text.ToString().Trim() == "")
{
dFieldName = "Country of patient should not be empty";
}
else if (cboDoctor.Text.ToString().Trim() == "")
{
dFieldName = "Doctor Name should not be empty";
}
if (dFieldName.ToString().Trim() != "")
{
MessageBox.Show(dFieldName);
}
long pUserID;
long patientID;
long patient;
SqlConnection conn=new SqlConnection("Data Source=NPD-4\\SQLEXPRESS;Initial Catalog=Tuscan7;Persist Security Info=true");
SqlDataAdapter da=new SqlDataAdapter();
SqlCommand cmd=new SqlCommand();
cmd.Connection=conn;
cmd.CommandType=CommandType.Text;
conn.Open();
if(patientID==0)
conn.Open();
object selecteditem=cboSex.SelectedIndex;
int x;
da.InsertCommand=new SqlCommand("Insert into Patient_id(patient_id,patient_sex,patient_dOB,row_upd_date,user_id)" + " Values(@patient_id,@patient_sex,@patient_dOB,@row_upd_date,@user_id)",conn);
da.InsertCommand.Parameters.Add("@patient_sex",SqlDbType.Int).Value=selecteditem;
da.InsertCommand.Parameters.Add("@patient_dOB",SqlDbType.DateTime).Value=dtDOB.Value;
da.InsertCommand.Parameters.Add("@row_upd_date",SqlDbType.DateTime).Value=Convert.ToDateTime(this);
da.InsertCommand.Parameters.Add("@user_id",SqlDbType.VarChar).Value=pUserID;
x=da.InsertCommand.ExecuteNonQuery();
long vPatientID;
if(patientID==0)
vPatientID=da.InsertCommand.Parameters.Add("@patient_id",SqlDbType.Int).Value=patient;
else
vPatientID=patientID;
if(patientID>0)
cmd=new SqlCommand("update Patient_name set status=false where patient_id="+patientID);
da.InsertCommand=new SqlCommand("Insert into Patient_name(patient_id,patient_first_name,patient_middle_name,patient_last_name,virology,row_upd_date,status,user_id)"+"Values(@patient_id,@patient_first_name,@patient_middle_name,@patient_last_name,@virology,@row_upd_date,@status,@user_id)",conn);
conn.Open();
object selecteditema=cboVirology.SelectedIndex;
da.InsertCommand.Parameters.Add("@patient_id",SqlDbType.Int).Value=vPatientID;
da.InsertCommand.Parameters.Add("@patient_first_name",SqlDbType.VarChar).Value=txtFname.Text;
da.InsertCommand.Parameters.Add("@patient_middle_name",SqlDbType.VarChar).Value=txtMname.Text;
da.InsertCommand.Parameters.Add("@patient_last_name",SqlDbType.VarChar).Value=txtLname.Text;
da.InsertCommand.Parameters.Add("@virology",SqlDbType.Int).Value=selecteditema;
da.InsertCommand.Parameters.Add("@row_upd_date",SqlDbType.DateTime).Value=Convert.ToDateTime(this);
da.InsertCommand.Parameters.Add("@status",SqlDbType.Bit).Value=true;
da.InsertCommand.Parameters.Add("@user_id",SqlDbType.VarChar).Value=pUserID;
x=da.InsertCommand.ExecuteNonQuery();
if((txtHnumber.Text!="")|| (txtMnumber.Text!=""))
if(patientID>0)
cmd=new SqlCommand("update patient_contact set status=false where patient_id="+patientID);
da.InsertCommand=new SqlCommand("Insert into patient_contact(patient_id,homenumber,mobilenumber,row_upd_date,status,user_id)"+"Values(@patient_id,@homenumber,@mobilenumber,@row_upd_date,@status,@user_id)",conn);
conn.Open();
da.InsertCommand.Parameters.Add("@patient_id",SqlDbType.Int).Value=vPatientID;
da.InsertCommand.Parameters.Add("@homenumber",SqlDbType.NVarChar).Value=txtHnumber.Text;
da.InsertCommand.Parameters.Add("@mobilenumber",SqlDbType.NVarChar).Value=txtMnumber.Text;
da.InsertCommand.Parameters.Add("@row_upd_date",SqlDbType.DateTime).Value=Convert.ToDateTime(this);
da.InsertCommand.Parameters.Add("@status",SqlDbType.Bit).Value=true;
da.InsertCommand.Parameters.Add("@user_id",SqlDbType.VarChar).Value=pUserID;
x=da.InsertCommand.ExecuteNonQuery();
if(patientID>0)
cmd=new SqlCommand("update Address9 set status=false where patient_id="+patientID);
da.InsertCommand=new SqlCommand("Insert into Address9(apartment_name,door_number,street_name_1,street_name_2,street_name_3,village,city,state,country,row_upd_date,apartment_number,patient_id,status,user_id,pcode)"+"Values(@apartment_name,@door_number,@street_name_1,@street_name_2,@street_name_3,@village,@city,@state,@country,@row_upd_date,@apartment_number,@patient_id,@status,@user_id,@pcode)",conn);
da.InsertCommand.Parameters.Add("@apartment_name",SqlDbType.NVarChar).Value=txtApartmentName.Text;
da.InsertCommand.Parameters.Add("@door_number",SqlDbType.NVarChar).Value=txtDoorNo.Text;
da.InsertCommand.Parameters.Add("@street_name_1",SqlDbType.VarChar).Value=txtStreet1.Text;
da.InsertCommand.Parameters.Add("@street_name_2",SqlDbType.VarChar).Value=txtStreet2.Text;
da.InsertCommand.Parameters.Add("@street_name_3",SqlDbType.VarChar).Value=txtStreet3.Text;
da.InsertCommand.Parameters.Add("@village",SqlDbType.NVarChar).Value=txtVillageArea.Text;
da.InsertCommand.Parameters.Add("@city",SqlDbType.NVarChar).Value=txtCity.Text;
da.InsertCommand.Parameters.Add("@state",SqlDbType.VarChar).Value=txtState.Text;
da.InsertCommand.Parameters.Add("@country",SqlDbType.NVarChar).Value=txtCountry.Text;
da.InsertCommand.Parameters.Add("@row_upd_date",SqlDbType.DateTime).Value=Convert.ToDateTime(this);
da.InsertCommand.Parameters.Add("@apartment_number",SqlDbType.NVarChar).Value=txtApartmentNo.Text;
da.InsertCommand.Parameters.Add("@patient_id",SqlDbType.Int).Value=vPatientID;
da.InsertCommand.Parameters.Add("@status",SqlDbType.Bit).Value=true;
da.InsertCommand.Parameters.Add("@user_id",SqlDbType.VarChar).Value=pUserID;
da.InsertCommand.Parameters.Add("@pcode",SqlDbType.VarChar).Value=txtPostalCode.Text;
x=da.InsertCommand.ExecuteNonQuery();
if(patientID>0)
cmd=new SqlCommand("update doctorpatient2 set status=false where patient_id="+patientID);
da.InsertCommand=new SqlCommand("Insert into doctorpatient2(patient_id,doctor_id,row_upd_date,status,user_id)"+"Values(@patient_id,@doctor_id,@row_upd_date,@status,@user_id)",conn);
da.InsertCommand.Parameters.Add("@patient_id",SqlDbType.Int).Value=vPatientID;
da.InsertCommand.Parameters.Add("@doctor_id",SqlDbType.Int).Value=cboDoctor.Items.Contains(cboDoctor.SelectedItem);
da.InsertCommand.Parameters.Add("@status",SqlDbType.Bit).Value=true;
da.InsertCommand.Parameters.Add("@row_upd_date",SqlDbType.DateTime).Value=Convert.ToDateTime(this);
da.InsertCommand.Parameters.Add("@user_id",SqlDbType.VarChar).Value=pUserID;
x=da.InsertCommand.ExecuteNonQuery();