我有一个ViewModel,它在构造函数中调用异步void方法来添加到集合中
public MyViewModel(ICommandHandler commandHandler)
{
_commandHandler = commandHandler;
SetupCollection();
}
private async void SetupCollection()
{
var commands = GetCommands();
foreach (var command in commands)
{
var response = await _commandHandler.ExecuteGetReply(command);
if (response != null)
Response.Add(response);
}
}
Run Code Online (Sandbox Code Playgroud)
我究竟如何将_commandHandler.ExecuteGetReply()
命令存根以返回值?
另外,在构造函数中有这样的函数可以做这样的事情吗?或者这可能是在... override void OnActivate()
呼叫(我正在使用Caliburn Micro)?
我有以下内容:
string outOfRange = "2147483648"; // +1 over int.MaxValue
Run Code Online (Sandbox Code Playgroud)
显然,如果你有一个数字以外的东西,这将失败:
var defaultValue = 0;
int.TryParse(outOfRange, out defaultValue);
Run Code Online (Sandbox Code Playgroud)
我的问题是,因为这是一个数字,并且它会失败,你int.TryParse()
怎么知道它失败了,因为字符串超出了它存储在容器的范围内?
谁能告诉我为什么我无法访问注册表项"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData"
?
如果我查询GetSubKeysNames
的"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer"
它只返回一个值的存在"Secure"
---->在哪里是所有其他子项?
谢谢.
我正在尝试创建一个方形图(X轴宽度与Y轴高度相同).
我找不到任何关于此的文档,我看到的所有可能无法访问的属性都无法访问.
我试过了:
<oxy:PlotView Model="{Binding Model}" Width="500" Height="500"/>
Run Code Online (Sandbox Code Playgroud)
这显然不起作用,因为这设置了整个区域(而不是图形特定部分).
也许是一个微不足道的问题,但我正在画一个空白.
我有类似的东西:
public class Foo
{
private string _variableValue;
public string VariableValue
{
get
{
return _variableValue;
}
set
{
if (value == _variableValue) return;
_variableValue = value;
}
}
public int Precision { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
基本上,VariableValue
持有双倍价值.我存储了一个小数精度数Precision
.我怎样才能VariableValue
Get
返回自己但格式化的Precision
小数位?
示例: VariableValue
是"10.12345",Precision
是2
:
VariableValue
应该是10.12
例子(2):VariableValue
是"10",Precision
是5
:
VariableValue
应该是10.00000
c# ×4
wpf ×2
asynchronous ×1
c#-5.0 ×1
int ×1
nunit ×1
oxyplot ×1
registry ×1
registrykey ×1
rhino-mocks ×1
string ×1
tryparse ×1
unit-testing ×1