2011-11-14 2 views
1

Windows Forms을 배우고 있는데 Windows Forms 및 클래스로 작업 할 때 막혀 있습니다. 나는 사용자가 Farenheit에 온도를 입력 한 다음 "변환"버튼을 클릭하여 입력 값을 "변환"클래스로 가져 와서 Celsius로 변환 한 다음 Farenheit와 Celsius를 둘 다 표시하는 형식을 만들고 싶습니다. 메시지 상자Windows 폼 응용 프로그램에서 클래스 호출

양식을 디자인했으며 클래스를 만드는 방법을 알고 있습니다. 내가 모르는 것은 폼에서 입력 값 (farenheit)을 클래스로 가져 와서 폼에서 변환 된 값을 호출하여 메시지 상자에 표시하는 방법입니다.

저는 C# 초보자이기 때문에 이해력과 초보자 답에 감사드립니다. 고맙습니다!

답변

5

당신은 당신이

public class form1 
{ 
    public void button_click(arguments...) 
    { 
     Convertor c = new Convertor(); 
     MessageBox.Show(c.FarenheitToCelsius(textbox1.text)); 
    } 
} 

클래스의 메서드를 호출 할 필요가 그런 방법을

public class Convertor 
{ 
public datatype FarenheitToCelsius(String value) 
{ 
    datatype celsius; 
    ...conversion logic 
    return celsius; 
} 
} 

을 작성해야합니다 :이

+0

예, 클래스 및 변환 논리 내부에서 메서드를 만드는 방법을 알고 있지만 내가 묻는 것은 MessageBox에이 경우 섭씨 결과를 표시하는 방법입니다. – okr

+0

고마워요 ... 당신이 여기서 뭘하는지 알지만 MessageBox 라인에 "비 정적 필드, 메소드 또는 속성에 대해 객체 참조가 필요합니다."라는 오류가 발생합니다. 어떻게 수정합니까? 그게? – okr

+0

@Oskar - 그냥 정적으로 메서드를 제거하고 메서드를 액세스 할 수있는 변환기 클래스의 instace 만들 오류 –

1

당신은 두 가지를 선언 할 필요가 단지 부분적인 예입니다 클래스 propertiessetFarenheit이고 다른 하나는 getConvertedheit입니다. 당신은 클래스를 호출 할 수 있으며 follows.The이 두 가지 속성을 다음과 같은 속성을 만들 수있는 클래스

public string setFarenheit { set; } 
public string getConvertedheit { get; set; } 

내부에있는 당신의 클래스의 getConvertedheit 속성으로 변환 heit 값을 할당합니다.

getConvertedheit = heitConvertedintoCelcius;//your converted celcius heit temp inside the class. 

그리고 Form 클래스에서 동일한 네임 스페이스에있는 경우 다음과 같이 호출 할 수 있습니다.

HeitConvertingClass hcc = new HeitConvertingClass(); 
hcc.setFarenheit=Userinput(the datatype is your choice may be int or float); 
MessageBox.Show(hcc.getCovertedheit.ToString()); 
1

음, 데이터 바인딩 또는 텍스트 상자의 TEXT 속성을 통해 값에 액세스하는 두 가지 방법이 있습니다.

두 번째는이 시나리오에서 더보기 쉽기 때문에 여기에 대해 알아 보겠습니다.

CONVERT 단추의 Click 이벤트 처리기에이 코드가 있습니다.이 코드는 변환 클래스에 문자열로 farenheit temp를 사용하고 표시 할 문자열을 반환하는 CONVERT 메서드가 있다고 가정합니다. .

convert c = new convert(); 
myConversionString as string = c.ConvertForDisplay(MyTextBoxName.Text); 
MessageBox.Show(myConversionString); 

그 값을 클래스에 적용하고 최종 결과를 UI로 가져 오는 기본 방법입니다.

관련 문제