Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
100% found this document useful (1 vote)
272 views

C# Quick Reference

This document provides a summary of various C# programming concepts including: loops, lists, dictionaries, interacting between forms, painting gradients, adding controls programmatically, converting between data types, timers, comparing strings, exception handling, sorting, overriding ToString(), operator overloading, enums, properties, checking types, calling SQL, delegates, threading, XML processing, file I/O, and registry access. Code examples are provided to demonstrate the usage of many of these concepts.

Uploaded by

Hemant Kumar
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
272 views

C# Quick Reference

This document provides a summary of various C# programming concepts including: loops, lists, dictionaries, interacting between forms, painting gradients, adding controls programmatically, converting between data types, timers, comparing strings, exception handling, sorting, overriding ToString(), operator overloading, enums, properties, checking types, calling SQL, delegates, threading, XML processing, file I/O, and registry access. Code examples are provided to demonstrate the usage of many of these concepts.

Uploaded by

Hemant Kumar
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

C# Quick Reference for CSE 490.

Gayle Laakmann
foreach foreach (DataRow drow in table.Rows) { ... } List List<string> mylist = new List<string>(); mylist.Add("hello"); Dictionary Dictionary<string, int> map = new Dictionary<string, int>(); map["hello"] = 5; Interacting Between Forms In Form1.cs SecondForm secondform = new SecondForm(this); In SecondForm.cs public SecondForm(System.Windows.Forms.Form p) { parentForm = p; } private void SecondForm(object sender, CancelEventArgs e) { parentForm.secondFormClosing(); } Painting a Gradient private void CustomControl_Paint(object s, PaintEventArgs e) { Color b = Color.LightBlue; Color w = Color.White; Rectangle r = new Rectangle(0, 0, this.Width, this.Height); LinearGradientBrush b = new LinearGradientBrush(r, b, w, 90); e.Graphics.FillRectangle(b, rect); }

Programmatically Adding Controls Label lbl = new Label(); lbl.Location = new Point(5, 10); this.Controls.Add(mylabel); Converting Ints to String int num = 13; num.ToString() Converting Strings to Ints string numstring = "123"; int result; bool succeeded = int.TryParse(numstring, out result); if (succeeded) { // this was actually a number }

Timer Timer minTimer = new Timer(); // or drag from Form Designer minTimer.Interval = 60000; minTimer.Tick += new System.EventHandler(this.minTimer_Tick); minTimer.Start(); private void minTimer_Tick(object sender, System.EventArgs e) { minTimer.Stop(); }

Comparing String Values string s = "hello"; string t = "hello"; if (s == t) { //s and t have the same value //s.Equals(t) is the same thing }

C# Quick Reference for CSE 490. Gayle Laakmann


Sorting Ints, Strings, etc Exception Handling try { //I hope things go ok... } catch (System.IO.IOException ioex) { MessageBox.Show(ex.Message, "Disk stuff); } catch (Exception ex) { MessageBox.Show(ex.Message, "Uh oh..."); } finally { //clean up, close the file, etc }

ArrayList list = ... list.Sort();


SortingCustom Objects public void sortMe() { DateSort ds = new DateSort(); myDateList.Sort(ds); } public class DateSort : IComparer { public DateSort() { // // TODO: Add constructor logic here // } public int Compare(object x, object y) { DateTime dx = (DateTime) x; DateTime dy = (DateTime) y; if (dx.Date == dy.Date) { return 0; //equal! } else if (dx.Date < dy.Date) { //list dx before dy return -1; } else { //list dx after dy return 1; } } public int CompareTo(object y) { return Compare(this,y); } } Overriding ToString() public class Message { public override string ToString() { return Subject is: + this.Subject; } }

Operator Overloading public static Gayle operator +(Gayle m1, Gayle m2) {

//now we can call m1 + m2


return new Gayle(m1.name, m2.name); }

Enumerations public enum Justification { Left, Right, Center }; public bool isLeft() { if (this.alignment == Justification.Left) { return true; } return false; } Get and Set (Properties) public static int MinimumAge { get { return minimum_age; } set //implicitly called when on "MinimumAge = 10" { if(value < 0) { minimum_age = 0; } else { minimum_age = value; } } }

Checking type of object object o = ... if (o is int) { int val = (int) o; }

C# Quick Reference for CSE 490. Gayle Laakmann


Calling SQL-Getting Table DataTable datatable = new DataTable(); string q = select * from Blogs; SqlDataAdapter adaptSQL = new SqlDataAdapter(q, BlinkySQL); adaptSQL.Fill(datatable); foreach (DataRow drow in table.Rows) { string commentbody = (string) drow["Body"]; } Delegates delegate void Fruitilicious(int num); Fruitilicious yummy; private void something() { yummy = new Fruitilicious(this.Apples); yummy(5); } private void Apples(int num) { ... }

Calling SQL-Getting Single Value string q = select max(title) from Blogs; SqlCommand command = new SqlCommand(q, BlinkySQL); myCommand.Connection.Open(); string title = command.ExecuteScalar(); command.Close();

Threading public delegate void Scruptious(string snacks); Thread myThread; private void startMyThread() { roses = new Scruptious(this.Airport); ThreadStart marge = new ThreadStart(Bubbles); myThread= new Thread(marge); myThread.Start(); } private void Airport(string word, int number) { //update the UI, or do what you want. //This happens in the main UI thread } private void Bubbles() { object[] parameters = {"Apples"}; this.Invoke(this.roses, parameters); } private void StopMyThread() { myThread.Abort(); }

Calling SQL-Execute Non-Query string q = delete from Blogs; SqlCommand command = new SqlCommand(q, BlinkySQL); BlinkySQL.Connection.Open(); command.ExecuteNonQuery(); BlinkySQL.Connection.Close();

Webservice edu.upenn.cis.wren.Blinky myBlinkySvc = new edu.upenn.cis.wren.Blinky(); /* user exists in system */ if (myBlinkySvc.UserExists(this.textBoxName.Text)) { /* successfully logged in */ if (myBlinkySvc.PasswordOK(username, password)) { ... } }

SQL-Insert insert into Blogs (UserID, BlogTitle) values (1234, 'Yo') SQL-Delete delete from Blogs where BlogID = 37515961 SQL-Select select UserID as 'User', max(datePosted) from Blogs where UserID <> 'Pat' group by UserID

Pausing / Adding Delay using System.Threading; public void PauseForALittle() { Thread.Sleep(1000); }

SQL-Update update Blogs set BlogTitle = 'hello' where BlogTitle like '%hi%'

C# Quick Reference for CSE 490. Gayle Laakmann


XMLReading public void Open() { XmlDocument doc = new XmlDocument(); doc.Load("c:\\xml.txt"); XmlNodeList nodelist = doc.GetElementsByTagName("contact"); if (nodelist.Count > 0) { XmlNode node = (XmlNode)nodelist[0]; if (node is XmlElement) { XmlElement element = (XmlElement)node; string contact = element.Name; } } } File IOReading if (File.Exists(path)) { System.IO.StreamReader file = null; try { file = new StreamReader(path); string data = file.ReadToEnd(); file.Close(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } finally { if (file != null) { file.Close(); } } }

XMLWriting public void Save() { XmlDocument doc = new XmlDocument(); XmlElement element = doc.CreateElement("contact"); doc.AppendChild(element); XmlAttribute attr = doc.CreateAttribute("id"); attr.Value = "1234"; element.Attributes.Append(attr); XmlText txt = doc.CreateTextNode("Gayle"); element.AppendChild(txt); XmlTextWriter wr = new XmlTextWriter("c:\\xml.txt", Encoding.UTF8); wr.Formatting = Formatting.None; doc.Save(wr); wr.Close(); }

File IOWriting StreamWriter f = new StreamWriter(pth, false); try { f.WriteLine("stuff to write to file"); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } finally { if (f != null) { f.Close(); } }

RegistryReading RegistryKey regKey = Registry.LocalMachine; regKey = Registry.LocalMachine; regKey = regKey.CreateSubKey("Software\\Glaak\\Fetcha"); object o = regKey.GetValue("lastUser"); if ((o != null) && (o is string)) { string name = (string) o; }

RegistryWriting RegistryKey regKey = Registry.LocalMachine; regKey = Registry.LocalMachine; regKey = regKey.CreateSubKey("Software\\Glaak\\Fetcha"); regKey.SetValue("lastUser", name);

You might also like