2013-10-30 69 views
0

新的C#編程,非常雛使用可變

我創建一個文本框的形式,我想我的程序中的方法讀那個盒子裏的數字,並與執行操作在其他方法數字,下面是它是現在

public void readG_TextChanged(object sender, EventArgs e) 
    { 
     string _G = readG.Text; 
     decimal _Gd = Convert.ToDecimal(_G); 
    } 

    public void readQ_TextChanged(object sender, EventArgs e) 
    { 
     string _Q = readQ.Text; 
     decimal _Qd = Convert.ToDecimal(_Q); 
    } 
    private void button1_Click(object sender, EventArgs e) 
    { 
     decimal _ULS = (1.35m * _Gd + 1.5m * _Qd); 
     Console.WriteLine("{0}",_ULS); 
    } 

readq在,readG是箱子的名稱 Button1的是按鈕繼續操作,並在控制檯上顯示它

到目前爲止,我還b中的_Gd和_Qd不在上下文中utton1_click方法,除此之外,我認爲它會運行相當優良

回答

2

您應該作用域閱讀起來...... http://msdn.microsoft.com/en-us/library/ms973875.aspx

一種方法是你_Qd和_Gd地處於一流水平,而不是方法中定義他們自己,以便您可以通過點擊方式訪問他們。

private decimal _Gd; 
private decimal _Qd; 
public void readG_TextChanged(object sender, EventArgs e) 
{ 
    string _G = readG.Text; 
    _Gd = Convert.ToDecimal(_G); 
} 

public void readQ_TextChanged(object sender, EventArgs e) 
{ 
    string _Q = readQ.Text; 
    _Qd = Convert.ToDecimal(_Q); 
} 
private void button1_Click(object sender, EventArgs e) 
{ 
    decimal _ULS = (1.35m * _Gd + 1.5m * _Qd); 
    Console.WriteLine("{0}",_ULS); 
} 
1

這涉及可變範圍。變量_Qd和_Gd僅在其方法中有作用域。

你可以使他們班的成員,這是他們聲明你的方法以外,在類的主體,具體如下:

private decimal _Gd; 
private decimal _Qd; 

然後你可以將它們像這樣:

_Gd = Convert.ToDecimal(_G); 
_Qd = Convert.ToDecimal(_Q); 

這些變量將在您的類中的任何方法中可見。

+0

是的我知道的範圍,我知道這正是我理解和使用你的解決方案的問題,並完美地工作..我不得不改變控制檯。命令到消息框而不是 非常感謝您的快速和有效的答案 –