从另一个类获取公共变量

时间:2016-08-05 08:54:40

标签: c# variables xamarin.forms

我有一个类,其中有一个公共静态变量,我想从另一个类访问。这是班级: 在GlobalVariable.cs

public class GlobalVariable
{
    public static int MoisVS = 3;
}

我想从另一个班级访问“MoisVS”。这是班级: 在ArretPage.cs

var globalvariable = new ProjetTN.Class.GlobalVariable();
globalvariable.MoisVS;  //<--- Make something like that.

我知道在WinForm应用程序中可以使用,但在Xamarin.forms应用程序中是否可以这样做?

2 个答案:

答案 0 :(得分:1)

您将MoisVS定义为静态,因此您无法从实例变量访问它。访问您使用类名本身的类的静态成员。例如,访问您的MoisVS将如下所示:

GlobalVariable.MoisVS

如果要将其作为实例属性进行访问,则必须将类更改为:

public class GlobalVariable
{
    public int MoisVS = 3;
}

如果您的班级中只有静态或const值。您还可以决定让整个班级静态

public static class GlobalVariable
{
    public static int MoisVS = 3;
    public const string MyString = "";
}

这将阻止您使用new关键字创建该类的实例。

答案 1 :(得分:0)

我会将其分解为步骤。

1)文件 - &gt;新文件 - &gt;一般 - &gt;选择空类 - &gt;将其命名(例如,UICONTROL_NAMES)

2)添加以下内容:(示例代码)

using System;

namespace iOSControls.HelperClass
{
    public static class UICONTROL_NAMES
    {
        public const string textField = "Text Fields";
        public const string inputTextField = "Input types - TextFields";
        public const string button = "Buttons";
        public const string label = "Label";
}

请注意:

UICONTROL_NAMES class is inside a folder group called HelperClass and iOSControls is the project name.

3)在ViewController.cs上,添加命名空间指令。

using iOSControls.HelperClass;
using Foundation;

4)访问UICONTROL NAMES中的const字符串:

string controlName = UICONTROL_NAMES.textField;