vb.net - 如何在 Visual Basic 中输入变量的范围
问题描述
我目前在 10 年级,正在上视觉基础的计算课。我正在尝试将一个名为 Wrong1 的变量设置为从负无穷到 2,然后从 2 到无穷大的范围,这样如果输入了除两个以外的任何答案,屏幕将变为红色,我知道该怎么做。我只是不知道如何为变量设置该范围。这是 Windows 应用程序 Visual Basic 2010
解决方案
VB中没有这样的东西。使用自定义类
public class AnswerValue
private _max as integer
private _min as integer
private _answer as integer
public property Max as integer
get
return _max
end get
friend set (value as integer) 'internal so you can set internally to dynamic value
_max = value
end set
end property
public property Min as integer
get
return _min
end get
friend set (value as integer)
_min = value
end set
end property
public property Answer as integer
get
return _answer
end get
set (value as integer)
if (value > _max & value < _min) then
Throw New Exception("value must be between " & _min & " and " & _max)
end if
_min = value
end set
end property
end class
' USAGE
try
dim av AnswerValue = _provider.GetAnswerValueFor(questionId)
av.Answer = Convert.ToInt32(txtAnswer1.Text)
catch es as Exception
errorList.Add(ex.Message)
end try
实现这一点的另一种方法是通过模型数据注释和验证器
public class MyModel
<Range(-100, 2)>
public property Min as integer
end class
查看 VB 中不同数据类型的类型范围。
推荐阅读
- django - Django:“初始迁移后”的信号
- ms-access - 确定单击时选择了哪个访问列表框行
- android - 通过 http 发送请求时出现 Poco 异常:SSL 异常:错误:1000007e:SSL 例程:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED
- python - 使用 Python 登录网站后抓取网站
- node.js - mongoose find() 不会返回所有条件正确的文档
- mysql - MySQL如何在一个字段中选择多个值?
- version-control - 从 git-svn dcommit 中排除 .git* 文件
- javascript - Mongoose find().exec() 承诺问题
- indexing - MSSQL 空间索引多个谓词不使用索引
- regex - grep 匹配字符串正则表达式 powershell