Valid double number in C#

텍스트 박스에 “12.5”, “.3”, “-12” 등과 같은 양수/음수의 double 숫자만 입력받을 수 있도록 하려면
(그외에 “abcd”같은 문자나 “12.3.4” 같은 이상한 숫자는 입력받을 수 없도록하기위해)

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
// accept only digit(0-9) with ‘.’ (dot) and ‘-‘ (minus)
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && e.KeyChar != ‘.’ && e.KeyChar != ‘-‘)
e.Handled = true;
// accept only one decimal point (.32)
if (e.KeyChar == ‘.’ && (sender as TextBox).Text.IndexOf(‘.’) > -1)
e.Handled = true;
// accept only minus sign at the beginning
if (e.KeyChar == ‘-‘ && (sender as TextBox).Text.Length > 0)
e.Handled = true;
}

Lab7

ConverterLib

Lab7 프로젝트 디렉토리 안에 모든 파일과 보고서를 넣고 Lab7_학번_이름.zip 압축한 후 e-learning (http://lms.dankook.ac.kr/index.jsp)으로 제출

Lab7 – WindowForm (GUI, Controls, EventHandler)

본인이 작성한 Lab6에 ConverterForm을 작성한다.
ConverterForm에서는 GUI방식의 Converter를 테스트할 수 있다.
close button을 누르면 테스트한 Converter 데이터를 테이블로 출력한다 (List 사용).
보고서의 내용은 기존 코드 분석과 이해한 내용 그리고 본인이 추가한 코드내용을 적는다.

C# Windows Forms Controls

Label, Button 사용예
http://dis.dankook.ac.kr/lectures/hci09/entry/Controls

Buttons
http://dis.dankook.ac.kr/lectures/hci09/entry/Buttons

GroupBox
http://dis.dankook.ac.kr/lectures/hci09/entry/GroupBox

TextBox
http://dis.dankook.ac.kr/lectures/hci09/entry/TextBox

LinkedLabel
http://dis.dankook.ac.kr/lectures/hci09/entry/Linked-Label

ListBox
http://dis.dankook.ac.kr/lectures/hci09/entry/ListBox

Poll
http://dis.dankook.ac.kr/lectures/hci09/entry/Poll

PictureBox
http://dis.dankook.ac.kr/lectures/hci09/entry/Picture-Timer

TabControl
http://dis.dankook.ac.kr/lectures/hci09/entry/Tab-Control

TreeControl
http://dis.dankook.ac.kr/lectures/hci09/entry/Tree-Control

ListView
http://dis.dankook.ac.kr/lectures/hci09/entry/ListView

Textbox (Number Only) 
http://dis.dankook.ac.kr/lectures/hci09/entry/Number-Only-Textbox

Lab6

Lab6_template

LibCollectionTest 실습을 참고한다.

Lab6프로젝트 디렉토리 안에 모든 파일과 고서 (3~4장)를 넣고 Lab6학번_이름.zip 압축한 후 e-learning (http://lms.dankook.ac.kr/index.jsp)으로 제출

Lab6– Collections(List, Dictionary, IComparable, IComparer, IEquatable, IEnumerable/IEnumerator, Sort, Equals, == operator, != operator, GetHashCode)

본인이 작성한 Lab5에 LengthConverter 클래스를 참고하여 다른 클래스도 바꾼다. ConverterTest에서는 List/Dictionary를 사용하여 각종 Converter 데이터를 추가하고 테이블로 출력한다.

https://www.unitconverters.net/length/km-to-miles.htm

그리고 Sort 사용 방법에 대하여 비교 분석 정리한다.

보고서는 출력해서 수업시작 전에 제출한다.

보고서의 내용은 기존 코드 분석과 이해한 내용 그리고 본인이 추가한 코드내용을 적는다.

How to: Sort ListView Items

How to: Sort ListView Items
http://msdn.microsoft.com/en-us/library/ms229643(VS.80).aspx

class ListViewItemComparer : IComparer
{
private int column;
public ListViewItemComparer() : this(0) {}
public ListViewItemComparer(int column)
{
this.column = column;
}

public int Compare(object x, object y) // string compare
{
return String.Compare(((ListViewItem)x).SubItems[column].Text,
((ListViewItem)y).SubItems[column].Text);
}
}

/////
public partial class Form1 : Form
{
[…]
private void listView1_ColumnClick(object sender, ColumnClickEventArgs e)
{

// Set the column number that is to be sorted; default to ascending.
this.listView1.ListViewItemSorter = new ListViewItemComparer(e.Column);

// Perform the sort with these new sort options.
this.listView1.Sort();
}
}