2013-12-12 2 views
0

변수 위의 클래스의 변수 cRentStart을 내 프로그램의 모든 클래스에서 액세스 할 수있게하려면 어떻게해야합니까? 이 초기화 할 때 순간 내 클래스의 모든 영역에 변수 액세스 가능하게하기

내가 유치원 1에 dateCheck 을 사용하고, 그래서 이것을 유지하고 다른 이벤트에서 사용하기에 가고 싶습니다은 개인 무효 viewOverdue_Click에게

public Form1() 
{ 
    InitializeComponent(); 
    viewRent.ForeColor = Color.Red; 
    dateCheck(); 
} 

void dateCheck() 
{ 

    CurrentDate.Text = "" + DateTime.Now; 
    DateTime cRentStart, cRentEnd; 
    DateTime today = DateTime.Now; 

    if (today.DayOfWeek == DayOfWeek.Monday) 
    { 
     cRentStart = today.AddDays(-5); 
     cRentEnd = today.AddDays(2); 
     CurrentRent.Text = "Current Rent Week: " + cRentStart.ToString("dd/MM/yyyy") + " - " + cRentEnd.ToString("dd/MM/yyyy"); 
    } 
    else if (today.DayOfWeek == DayOfWeek.Tuesday) 
    { 
     cRentStart = today.AddDays(-6); 
     cRentEnd = today.AddDays(1); 
     CurrentRent.Text = "Current Rent Week: " + cRentStart.ToString("dd/MM/yyyy") + " - " + cRentEnd.ToString("dd/MM/yyyy"); 
    } 
    else if (today.DayOfWeek == DayOfWeek.Wednesday) 
    { 
     cRentStart = today.AddDays(0); 
     cRentEnd = today.AddDays(7); 
     CurrentRent.Text = "Current Rent Week: " + cRentStart.ToString("dd/MM/yyyy") + " - " + cRentEnd.ToString("dd/MM/yyyy"); 
    } 
    else if (today.DayOfWeek == DayOfWeek.Thursday) 
    { 
     cRentStart = today.AddDays(-1); 
     cRentEnd = today.AddDays(6); 
     CurrentRent.Text = "Current Rent Week: " + cRentStart.ToString("dd/MM/yyyy") + " - " + cRentEnd.ToString("dd/MM/yyyy"); 
    } 
    else if (today.DayOfWeek == DayOfWeek.Friday) 
    { 
     cRentStart = today.AddDays(-2); 
     cRentEnd = today.AddDays(5); 
     CurrentRent.Text = "Current Rent Week: " + cRentStart.ToString("dd/MM/yyyy") + " - " + cRentEnd.ToString("dd/MM/yyyy"); 
    } 
    else if (today.DayOfWeek == DayOfWeek.Saturday) 
    { 
     cRentStart = today.AddDays(-3); 
     cRentEnd = today.AddDays(4); 
     CurrentRent.Text = "Current Rent Week: " + cRentStart.ToString("dd/MM/yyyy") + " - " + cRentEnd.ToString("dd/MM/yyyy"); 
    } 
    else if (today.DayOfWeek == DayOfWeek.Sunday) 
    { 
     cRentStart = today.AddDays(-4); 
     cRentEnd = today.AddDays(3); 
     CurrentRent.Text = "Current Rent Week: " + cRentStart.ToString("dd/MM/yyyy") + " - " + cRentEnd.ToString("dd/MM/yyyy"); 
    } 
} 
+1

'Form1'의'내부 '또는'공개 '속성으로 선언 하시겠습니까? 편집 : 그러나, 당신의 질문 제목의 컨텍스트에서 무엇을 요구하는지 모르겠습니다 : "모든 개인 수업에 액세스 할 수 있습니다" –

+0

@ChrisSinclair 내 코드의 컨텍스트에서 어떻게 보이나요? – theshizy

+1

기본 C# 객체 지향 프로그래밍에 대한 입문서가 필요합니다. 본질적으로 기본 클래스 구조, 필드, 속성 등. 빠른 google은 MSDN에서이 소개를 얻었습니다. 한 눈에보기가 온라인에서 볼 수있는 톤수가 반으로 줄었습니다. http://msdn.microsoft.com/en-us/beginner/bb308750.aspx –

답변

1
라고

원하는 것을 전역 변수라고합니다.
글로벌 변수에 this page을 참조하십시오.

일부 노트 :

  • 공개 전역 변수는 개체 구문 분석된다 적 접근 할 수있다.
  • 공개 정적 전역 변수는 클래스가 노출 된 곳에서 액세스 할 수 있습니다.
  • 개인 전역 변수는 해당 클래스/개체에 의해서만 내부적으로 사용할 수 있다고 가정합니다.

예 그것을 정확한 범위를함으로써

namespace MyApp 
{ 
    public class MyClass 
    { 
     public static string MyString { get; set; } 

     public MyClass() 
     { 

     } 
    } 

    public class MyOtherClass 
    { 
     public MyOtherClass() 
     { 
      MyClass.MyString = "Test"; 
     } 
    } 
} 
+0

다른 단어 - http://pastebin.com/00z4PA8M – theshizy

+0

추가 된 예제보기 –

관련 문제