从protected更新公共字符串

时间:2014-04-20 10:17:07

标签: c# .net

我想制作这个字符串public。即,可从其他功能获得。我怎么能这样做?

protected override void OnNavigatedTo(NavigationEventArgs e)
{   
    String parameter = NavigationContext.QueryString["parameter"];   
}

3 个答案:

答案 0 :(得分:1)

在函数(全局范围)之外声明它。

类似的东西:

String parameter="";
protected override void OnNavigatedTo(NavigationEventArgs e)
{   
    parameter = NavigationContext.QueryString["parameter"];   
}

现在,您可以在该文件中的任何位置使用字符串parameter

答案 1 :(得分:0)

public String parameter = new String();
protected override void OnNavigatedTo(NavigationEventArgs e){

    String parameter = NavigationContext.QueryString["parameter"];

}

您只需要将变量的范围更改为global:)

答案 2 :(得分:0)

我的建议是你将它移到函数之外,但将其设为私有,然后通过公共属性公开它;例如:

private string _parameter;
public string Parameter
{
    get { return _parameter;}
    set
    {
        _parameter = value;
    }
}

protected override void OnNavigatedTo(NavigationEventArgs e)
{   
    _parameter = NavigationContext.QueryString["parameter"];   
}

如果您只需要从当前类中访问它,但在函数外部,则可以省略该属性,甚至将其设置为只读。或者,您可以使用隐式属性定义:

public string Parameter { get; set; }

使用C#6,您可以使用initializers