将值标记为由用户输入或由应用程序计算

时间:2018-03-16 12:51:33

标签: c# input state

我正在筹划一个新的应用程序。本应用程序中使用的值既可以由用户输入,也可以由应用程序本身计算。

我需要做的是以能够清楚识别来源(用户或应用)的方式标记值。

编辑(附加信息):我们的想法是不识别用户是否可以输入值。这个想法显然有可能将值标记为由用户计算或输入。该值不仅会在视图中使用,还会在计算中使用。

A级将有一个双v。这个双倍可以计算或由用户输入。

class A
{
    public double v;  // <-- this would be the value I'd like to mark as program-defined or user defined
}

所以,当我这样做时:

v = 1.0;

它将被标记为程序定义。

有人提示如何在C#中实现这一目标吗?

在C ++中,我将创建一个基类并从中派生出来。但是在C#中我想采用一种更通用的方法,这种方法不会强迫我为每个输入类型创建一个类。

关于如何实现这一目标的任何想法?

感谢。

2 个答案:

答案 0 :(得分:1)

如果您正在寻找标记用于用户输入或内部的某些属性或类的方法,则可以使用属性。 https://docs.microsoft.com/en-us/dotnet/standard/attributes/writing-custom-attributes

答案 1 :(得分:1)

一般类 实现变量,用于标识是否是应用或用户输入的值。

可能的变量类型:

  • 字符串('用户','app'...)
  • 一个枚举,所以如果enum被称为Source,那么它将是Source.User,如果是应用Source.App。
  • 整数(作为ID)

如果您的类型数量有限,我会亲自使用枚举,因为它允许您提供建议的选项。如果你有很多类型,我会使用字符串或整数。